Notifies a partner that a Google user has clipped a partner's coupon on a Google surface.
The response should return success if the coupon can be clipped in the partner's system. If the coupon can not be clipped, a non-success response should be returned.
If the endpoint encounters an error while processing the request, the response body from this endpoint should be of type .ErrorResponse
An example request looks like:
{
"requestHeader": {
"protocolVersion": {
"major": 1
},
"requestId": "randomRequestId67890",
"requestTimestamp": {
"epochMillis": "1481899949606"
},
"paymentIntegratorAccountId": "GoldenPartner123"
},
"linkUserAccountRequestId": "qierozie12345",
"couponIdentifier": {"couponId": "couponId12345"}
}
An example response looks like:
{
"responseHeader": {
"responseTimestamp": {
"epochMillis": "1481899949611"
}
},
"result": {
"success": {}
}
}
HTTP request
POST https://www.integratorhost.example.com/integrator-base-path/partner-user-account-linking-v1/clipCoupon
Request body
The request body contains data with the following structure:
| JSON representation |
|---|
{ "requestHeader": { object ( |
| Fields | |
|---|---|
requestHeader |
REQUIRED: Common header for requests. |
linkUserAccountRequestId |
REQUIRED: A reference to an earlier |
couponIdentifier |
REQUIRED: A unique identifier for the coupon. |
Response body
This method supports multiple return types. For additional information about what 4XX or 5XX HTTP status code to return with an ErrorResponse, consult the ErrorResponse object and HTTP status codes documentation.
| Possible response messages | |
|---|---|
| HTTP 200 Status |
|
| HTTP 4XX / 5XX Status |
|
ClipCouponResponse
Response for marking a coupon as clipped
| JSON representation |
|---|
{ "responseHeader": { object ( |
| Fields | |
|---|---|
responseHeader |
Common header for responses. |
result |
REQUIRED: Contains the result of the request |
ClipCouponResult
Details corresponding to the result.
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field result. REQUIRED: Contains the possible result types. Exactly one must be set. result can be only one of the following: |
|
success |
Coupon successfully clipped |
userAccountUnlinked |
Declined because the user's account has been unlinked. |
notEligibleForGoogle |
Google is not eligible for this coupon, but it may be clipped on the partner's platform. |
invalidState |
The coupon is not in a clippable state. E.g. the merchant has terminated the coupon. |
expired |
The coupon is expired |
validityPeriodFuture |
The coupon's validity period hasn't started yet |
userNotEligible |
The coupon has restrictions that this user doesn't satisfy |
privacyPolicyNotAgreed |
The user hasn't provided consent yet |
userCouponClippingLimitReached |
The user has reached the maximum limit of coupons and can't clip any more |
alreadyClipped |
The user has already clipped this coupon on the partner's platform, and it shouldn't be shown on Google surfaces. |