ThirdwatchApi - Java client for thirdwatch_api
The first version of the Thirdwatch API is an exciting step forward towards making it easier for developers to pass data to Thirdwatch.
Once you've registered your website/app it's easy to start sending data to Thirdwatch. All endpoints are only accessible via https and are located at api.thirdwatch.ai
.
For instance: you can send event at the moment by HTTPS POST
request to the following URL with your API key in Header
and JSON
data in request body.
https://api.thirdwatch.ai/event/v1
Every API request must contain API Key
in header value X-THIRDWATCH-API-KEY
. Every event must contain your _userId
(if this is not available, you can alternatively provide a _sessionId
value also in _userId
).
- API version: 0.0.1
Building the API client library requires Maven to be installed.
To install the API client library to your local Maven repository, simply execute:
mvn install
To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:
mvn deploy
Refer to the official documentation for more information.
Add this dependency to your project's POM:
<dependency>
<groupId>ai.thirdwatch</groupId>
<artifactId>thirdwatch_api</artifactId>
<version>0.0.1</version>
<scope>compile</scope>
</dependency>
Add this dependency to your project's build file:
compile "ai.thirdwatch:thirdwatch_api:0.0.1"
At first generate the JAR by executing:
mvn package
Then manually install the following JARs:
- target/thirdwatch_api-0.0.1.jar
- target/lib/*.jar
Please follow the installation instruction and execute the following Java code:
import ai.thirdwatch.*;
import ai.thirdwatch.auth.*;
import ai.thirdwatch.model.*;
import ai.thirdwatch.api.AddPromotionApi;
import java.io.File;
import java.util.*;
public class AddPromotionApiExample {
public static void main(String[] args) {
String twBasePath = "https://api.thirdwatch.ai/event"; // For production environment
// String twBasePath = "http://api.thirdwatch.co/event"; // For dev and staging environment
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath(twBasePath)
// Configure API key authorization: api_key
ApiKeyAuth api_key = (ApiKeyAuth) defaultClient.getAuthentication("api_key");
api_key.setApiKey("YOUR API KEY");
AddPromotionApi apiInstance = new AddPromotionApi();
AddPromotion JSON = new AddPromotion(); // AddPromotion | Pass added promotion info to thirdwatch. Only `_userID` is required field. But this should contain promotion info.
try {
EventResponse result = apiInstance.addPromotion(JSON);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling AddPromotionApi#addPromotion");
e.printStackTrace();
}
}
}
All URIs are relative to https://api.thirdwatch.ai/event
Class | Method | HTTP request | Description |
---|---|---|---|
AddPromotionApi | addPromotion | POST /v1/add_promotion | Use add_promotion to record when a user adds one or more promotions to their account. |
AddToCartApi | addToCart | POST /v1/add_to_cart | Use add_to_cart when a user adds an item to their shopping cart or list. |
ChargebackApi | chargeback | POST /v1/chargeback | Use chargeback to capture a chargeback reported on a transaction. This event can be called multiple times to record changes to the chargeback state. |
CreateAccountApi | createAccount | POST /v1/create_account | Use create_account to pass user details at user registration. |
CreateOrderApi | createOrder | POST /v1/createOrder | Submit a new or existing order to Thirdwatch for review. This API should contain order item info, the payment info, and user identity info. |
CustomEventApi | customEvent | POST /v1/custom_event | Use order_status to track the order processing workflow of a previously submitted order. |
ItemStatusApi | itemStatus | POST /v1/item_status | Use item_status to update the status of item that you’ve already pass to Thirdwatch. |
LinkSessionToUserApi | linkSessionToUser | POST /v1/link_session_to_user | Use link_session_to_user to associate specific session to a user. Generally used only in anonymous checkout workflows. |
LoginApi | login | POST /v1/login | Use login to record when a user attempts to log in. |
LogoutApi | logout | POST /v1/logout | Use logout to record when a user logs out. |
OrderStatusApi | orderStatus | POST /v1/order_status | Use order_status to track the order processing workflow of a previously submitted order. |
RemoveFromCartApi | removeFromCart | POST /v1/remove_from_cart | Use remove_from_cart when a user removes an item from their shopping cart or list. |
ReportItemApi | reportItem | POST /v1/report_item | Use report_item to let us know when another user reports that this item may violate your company’s policies. |
SendMessageApi | sendMessage | POST /v1/send_message | Use send_message to record when a user sends a message to other i.e. seller, support. |
SubmitReviewApi | submitReview | POST /v1/submit_review | Use submit_review when a user-submitted review of a product or seller. |
TagAPIApi | tagUser | POST /v1/tag | The Tag API enables you to tell Thirdwatch which of your users are bad and which are good. |
TransactionApi | transaction | POST /v1/transaction | Use transaction to record attempts results to Pay, Transfer money, Refund or other transactions. |
UntagAPIApi | unTagUser | POST /v1/untag | If you are unsure whether a user is bad or good, you can always remove tag and leave the user in a neutral state. |
UpdateAccountApi | updateAccount | POST /v1/update_account | Use update_account to record changes to the user's account information. |
UpdateOrderApi | updateOrder | POST /v1/update_order | Update details of an existing order. |
- AddPromotion
- AddToCart
- BillingAddress
- Chargeback
- CreateAccount
- CreateOrder
- Custom
- CustomInfo
- ErrorResponse
- EventResponse
- Item
- ItemStatus
- LinkSessionToUser
- Login
- Logout
- OrderStatus
- PaymentMethod
- Promotion
- RemoveFromCart
- ReportItem
- Seller
- SendMessage
- ShippingAddress
- SubmitReview
- Tag
- Transaction
- UnTag
- UpdateAccount
- UpdateOrder
Authentication schemes defined for the API:
- Type: API key
- API key parameter name: X-THIRDWATCH-API-KEY
- Location: HTTP header
It's recommended to create an instance of ApiClient
per thread in a multithreaded environment to avoid any potential issues.