|
1 | | -# Qualtrics API Client for Java |
2 | | - |
3 | | -[](https://opensource.org/licenses/MIT) |
4 | | -[](https://www.java.com) |
5 | | - |
6 | | -A lightweight Java client library for Qualtrics API integration. Built for Java developers who need to integrate their applications with the Qualtrics Employee Experience platform. 🚀 |
7 | | - |
8 | | -This API client provides type-safe Java interfaces for Qualtrics API, enabling seamless management of: |
9 | | -- Participant directories |
10 | | -- EX projects |
11 | | -- Project invitations |
12 | | -- Employee experience operations |
13 | | - |
14 | | -## ✨ Why Choose This Client? |
15 | | - |
16 | | -- 💡 **Type-Safe Java API** - fully typed interfaces for Qualtrics API endpoints |
17 | | -- 🛡️ **Secure Authentication** - API token and OAuth2 support |
18 | | -- 📚 **Clear Documentation** - comprehensive examples for Java integration |
19 | | -- 🚀 **Java 17+ Support** - compatibility with latest Java versions |
20 | | - |
21 | | -## 🎯 Implemented Features |
22 | | - |
23 | | -### Employee Experience (EX) API Features |
24 | | - |
25 | | -- ✅ Directories API |
26 | | - - List all directories |
27 | | - - Create a new directory |
28 | | - - Get a specific directory |
29 | | - - Update a directory |
30 | | - - Delete a directory |
31 | | - |
32 | | -- ✅ Projects API |
33 | | - - List all projects |
34 | | - - Create a new project |
35 | | - - Get a specific project |
36 | | - - Update a project |
37 | | - - Delete a project |
38 | | - - Manage project participants |
39 | | - |
40 | | -- ✅ Invitations API |
41 | | - - Send project invitations |
42 | | - - Manage invitation status |
43 | | - - Retrieve invitation history |
44 | | - |
45 | | -## 🚨 Project Status |
46 | | - |
47 | | -> ⚠️ **Note: This is a development version!** |
48 | | -> |
49 | | -> We are actively implementing more Qualtrics API features. |
50 | | -> Contributions and feedback are welcome on GitHub! |
51 | | -
|
52 | | -## 📦 Version Information |
53 | | - |
54 | | -- **Current Version**: `0.1.0` |
55 | | -- **Supported API Version**: `v3` |
56 | | -- **Java Compatibility**: Java 17+ |
57 | | - |
58 | | -## 🔓 License |
59 | | - |
60 | | -**MIT License** |
61 | | - |
62 | | -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files, to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software. |
63 | | - |
64 | | -The only requirement is to preserve the original author attribution in the source code and documentation. |
65 | | - |
66 | | -## 🚀 Quick Start Guide |
67 | | - |
68 | | -### 1️⃣ Installation |
69 | | - |
70 | | -Clone and build the library from source: |
71 | | - |
72 | | -```sh |
73 | | -git clone https://github.com/wtx-labs/qualtrics-api-client-java.git |
74 | | -cd qualtrics-api-client-java |
75 | | -mvn clean install |
76 | | -``` |
77 | | - |
78 | | -Then add the locally built artifact to your project: |
79 | | - |
80 | | -```xml |
81 | | -<dependency> |
82 | | - <groupId>pl.wtx.qualtrics</groupId> |
83 | | - <artifactId>qualtrics-api-client</artifactId> |
84 | | - <version>0.1.0</version> |
85 | | -</dependency> |
86 | | -``` |
87 | | - |
88 | | -### 2️⃣ Java Integration Example |
89 | | - |
90 | | -Here's how to get EX directory participant data using the client: |
91 | | - |
92 | | -```java |
93 | | -public class QualtricsApiClientUsageDemo { |
94 | | - |
95 | | - // TODO: Set your Qualtrics API base path! |
96 | | - private static final String API_BASE_PATH = "https://yul1.qualtrics.com/API/v3"; |
97 | | - private static final String API_ACCESS_TOKEN = "TODO_SET_API_TOKEN"; |
98 | | - |
99 | | - public static void main(String[] args) { |
100 | | - |
101 | | - System.out.println(">>> Start running the QualtricsApiClientUsageDemo..."); |
102 | | - |
103 | | - // Use QualtricsApiClient(true) if you need to log API communication messages. |
104 | | - QualtricsApiClient apiClient = new QualtricsApiClient(); |
105 | | - |
106 | | - apiClient.setBasePath(API_BASE_PATH); |
107 | | - apiClient.addDefaultHeader("X-API-TOKEN", API_ACCESS_TOKEN); |
108 | | - |
109 | | - DirectoriesApi directoriesApi = new DirectoriesApi(apiClient); |
110 | | - |
111 | | - try { |
112 | | - |
113 | | - // Example request for participant with identifier eg. P_cMiJRssmeLW0Noh from the "EX" directory. |
114 | | - ParticipantResponse participantResponse = directoriesApi.getParticipantByIdInDirectory("EX", "P_cMiJRssmeLW0Noh"); |
115 | | - |
116 | | - // Example participant's first name: |
117 | | - System.out.println("Participant first name: " + participantResponse.getFirstName()); |
118 | | - |
119 | | - } catch (ApiException exception) { |
120 | | - System.err.println("Error occurred during API call: " + exception); |
121 | | - } |
122 | | - |
123 | | - System.out.println("<<< The QualtricsApiClientUsageDemo has been finished."); |
124 | | - |
125 | | - } |
126 | | - |
127 | | -} |
128 | | -``` |
129 | | - |
130 | | -## 🔗 Get Involved |
131 | | - |
132 | | -- ✨ Check our [GitHub Issues](https://github.com/wtx-labs/qualtrics-api-client-java/issues) for latest updates |
133 | | -- 💡 Have suggestions? Open an Issue or contribute to the project |
134 | | -- 🌟 Star this repository if you find it helpful! |
135 | | - |
136 | | -## 📊 Project Statistics |
137 | | - |
138 | | -- ⭐ Actively developed |
139 | | -- 🔄 Regular updates and improvements |
140 | | -- 👥 Open for community contributions |
141 | | - |
142 | | -## 🔍 Keywords |
143 | | - |
144 | | -qualtrics java client, qualtrics ex api java, java qualtrics integration, qualtrics api v3 java, employee experience java integration, qualtrics java library, java rest api client qualtrics |
145 | | - |
146 | | -🚀 Happy coding! 😊 |
147 | | - |
148 | | -**Your WTX Labs Team** 🚀 |
| 1 | +# Qualtrics API Client for Java |
| 2 | + |
| 3 | +[](https://opensource.org/licenses/MIT) |
| 4 | +[](https://www.java.com) |
| 5 | + |
| 6 | +A lightweight Java client library for Qualtrics API integration. Built for Java developers who need to integrate their applications with the Qualtrics Employee Experience platform. 🚀 |
| 7 | + |
| 8 | +This API client provides type-safe Java interfaces for Qualtrics API, enabling seamless management of: |
| 9 | +- Bulk importing contacts along with their transaction data |
| 10 | +- Creating, managing, and sending surveys to contacts |
| 11 | +- Tracking and managing contact history and activity |
| 12 | +- Exporting contact data for external use |
| 13 | +- Managing participants within Employee Experience project directories |
| 14 | +- Creating and administering EX projects and their participants |
| 15 | +- Retrieving project IDs for participants with incomplete project involvement |
| 16 | + |
| 17 | +## ✨ Why Choose This Client? |
| 18 | + |
| 19 | +- 💡 **Type-Safe Java API** - fully typed interfaces for Qualtrics API endpoints |
| 20 | +- 🛡️ **Secure Authentication** - API token and OAuth2 support |
| 21 | +- 📚 **Clear Documentation** - comprehensive examples for Java integration |
| 22 | +- 🚀 **Java 17+ Support** - compatibility with latest Java versions |
| 23 | + |
| 24 | +## 🎯 Implemented Features |
| 25 | + |
| 26 | +- ✅ Contact Imports API |
| 27 | + - Bulk import contacts |
| 28 | + - Import transaction data for contacts |
| 29 | + |
| 30 | +- ✅ Contacts / Directory Contacts API |
| 31 | + - Create contacts |
| 32 | + - Manage contacts |
| 33 | + - Send surveys to contacts |
| 34 | + |
| 35 | +- ✅ Contacts / Directory Contacts History API |
| 36 | + - Manage contact history |
| 37 | + - Track contact changes and activity |
| 38 | + |
| 39 | +- ✅ Contacts / Contact Exports API |
| 40 | + - Export contact data |
| 41 | + |
| 42 | +- ✅ EX APIs / Directories |
| 43 | + - Manage Employee Experience project participants |
| 44 | + |
| 45 | +- ✅ EX APIs / Projects |
| 46 | + - Manage Employee Experience projects |
| 47 | + - Manage project participants |
| 48 | + |
| 49 | +- ✅ EX APIs / EX Invitations |
| 50 | + - Retrieve incomplete project IDs for participants |
| 51 | + |
| 52 | + |
| 53 | +## 🚨 Project Status |
| 54 | + |
| 55 | +> ⚠️ **Note: This is a development version!** |
| 56 | +> |
| 57 | +> We are actively implementing more Qualtrics API features. |
| 58 | +> Contributions and feedback are welcome on GitHub! |
| 59 | +
|
| 60 | +## 📦 Version Information |
| 61 | + |
| 62 | +- **Current Version**: `0.1.1` |
| 63 | +- **Supported API Version**: `v3` |
| 64 | +- **Java Compatibility**: Java 17+ |
| 65 | + |
| 66 | +## 🔓 License |
| 67 | + |
| 68 | +**MIT License** |
| 69 | + |
| 70 | +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files, to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software. |
| 71 | + |
| 72 | +The only requirement is to preserve the original author attribution in the source code and documentation. |
| 73 | + |
| 74 | +## 🚀 Quick Start Guide |
| 75 | + |
| 76 | +### 1️⃣ Installation |
| 77 | + |
| 78 | +Clone and build the library from source: |
| 79 | + |
| 80 | +```sh |
| 81 | +git clone https://github.com/wtx-labs/qualtrics-api-client-java.git |
| 82 | +cd qualtrics-api-client-java |
| 83 | +mvn clean install |
| 84 | +``` |
| 85 | + |
| 86 | +Then add the locally built artifact to your project: |
| 87 | + |
| 88 | +```xml |
| 89 | +<dependency> |
| 90 | + <groupId>pl.wtx.qualtrics</groupId> |
| 91 | + <artifactId>qualtrics-api-client</artifactId> |
| 92 | + <version>0.1.1</version> |
| 93 | +</dependency> |
| 94 | +``` |
| 95 | + |
| 96 | +### 2️⃣ Java Integration Example |
| 97 | + |
| 98 | +Here's how to get EX directory participant data using the client: |
| 99 | + |
| 100 | +```java |
| 101 | +public class QualtricsApiClientUsageDemo { |
| 102 | + |
| 103 | + // TODO: Set your Qualtrics API base path! |
| 104 | + private static final String API_BASE_PATH = "https://yul1.qualtrics.com/API/v3"; |
| 105 | + private static final String API_ACCESS_TOKEN = "TODO_SET_API_TOKEN"; |
| 106 | + |
| 107 | + public static void main(String[] args) { |
| 108 | + |
| 109 | + System.out.println(">>> Start running the QualtricsApiClientUsageDemo..."); |
| 110 | + |
| 111 | + // Use QualtricsApiClient(true) if you need to log API communication messages. |
| 112 | + QualtricsApiClient apiClient = new QualtricsApiClient(); |
| 113 | + |
| 114 | + apiClient.setBasePath(API_BASE_PATH); |
| 115 | + apiClient.addDefaultHeader("X-API-TOKEN", API_ACCESS_TOKEN); |
| 116 | + |
| 117 | + DirectoriesApi directoriesApi = new DirectoriesApi(apiClient); |
| 118 | + |
| 119 | + try { |
| 120 | + |
| 121 | + // Example request for participant with identifier eg. P_cMiJRssmeLW0Noh from the "EX" directory. |
| 122 | + ParticipantResponse participantResponse = directoriesApi.getParticipantByIdInDirectory("EX", "P_cMiJRssmeLW0Noh"); |
| 123 | + |
| 124 | + // Example participant's first name: |
| 125 | + System.out.println("Participant first name: " + participantResponse.getFirstName()); |
| 126 | + |
| 127 | + } catch (ApiException exception) { |
| 128 | + System.err.println("Error occurred during API call: " + exception); |
| 129 | + } |
| 130 | + |
| 131 | + System.out.println("<<< The QualtricsApiClientUsageDemo has been finished."); |
| 132 | + |
| 133 | + } |
| 134 | + |
| 135 | +} |
| 136 | +``` |
| 137 | + |
| 138 | +## 🔗 Get Involved |
| 139 | + |
| 140 | +- ✨ Check our [GitHub Issues](https://github.com/wtx-labs/qualtrics-api-client-java/issues) for latest updates |
| 141 | +- 💡 Have suggestions? Open an Issue or contribute to the project |
| 142 | +- 🌟 Star this repository if you find it helpful! |
| 143 | + |
| 144 | +## 📊 Project Statistics |
| 145 | + |
| 146 | +- ⭐ Actively developed |
| 147 | +- 🔄 Regular updates and improvements |
| 148 | +- 👥 Open for community contributions |
| 149 | + |
| 150 | +## 🔍 Keywords |
| 151 | + |
| 152 | +qualtrics java client, qualtrics ex api java, java qualtrics integration, qualtrics api v3 java, employee experience java integration, qualtrics java library, java rest api client qualtrics |
| 153 | + |
| 154 | +🚀 Happy coding! 😊 |
| 155 | + |
| 156 | +**Your WTX Labs Team** 🚀 |
0 commit comments