@wix/bex-utils 2.78.0 → 2.80.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/builders.impl.d.ts +22 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/builders.impl.js +275 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/builders.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/http.impl.d.ts +50 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/http.impl.js +250 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/http.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/meta.impl.d.ts +16 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/meta.impl.js +81 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/meta.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/proto/client/proto-generated.d.ts +7116 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/proto/client/proto-generated.js +2 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/proto/proto-generated.d.ts +3557 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/proto/proto-generated.js +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/proto/server/proto-generated.d.ts +7113 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/proto/server/proto-generated.js +2 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/rpc.impl.d.ts +59 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/rpc.impl.js +109 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/rpc.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/types.impl.d.ts +343 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/types.impl.js +42 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/cjs/types.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/builders.impl.d.ts +22 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/builders.impl.js +239 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/builders.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/http.impl.d.ts +50 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/http.impl.js +244 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/http.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/meta.impl.d.ts +16 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/meta.impl.js +56 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/meta.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/rpc.impl.d.ts +59 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/rpc.impl.js +84 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/rpc.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/types.impl.d.ts +343 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/types.impl.js +39 -0
- package/@wix/ambassador-dealer-v1-offer-event/build/es/types.impl.js.map +1 -0
- package/@wix/ambassador-dealer-v1-offer-event/builders/package.json +7 -0
- package/@wix/ambassador-dealer-v1-offer-event/http/package.json +7 -0
- package/@wix/ambassador-dealer-v1-offer-event/meta/package.json +7 -0
- package/@wix/ambassador-dealer-v1-offer-event/package.json +52 -0
- package/@wix/ambassador-dealer-v1-offer-event/rpc/package.json +6 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/action_payload.proto +33 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/annotations.proto +451 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/api_errors.proto +142 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/callback.proto +163 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/context.proto +19 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/entity.proto +127 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/errors.proto +127 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/idempotency.proto +25 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/permissions.proto +46 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/sla.proto +24 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/subscription.proto +32 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/api/validations.proto +142 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/address.proto +148 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/bulk.proto +53 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/identification.proto +40 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/image.proto +8 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/media.proto +280 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/money.proto +32 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/pageurl.proto +32 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/paging.proto +121 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/query.proto +799 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/sorting.proto +36 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/spi.proto +85 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/tags.proto +55 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/common/wixlink.proto +203 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/dealerOfferEvents/api/v1/dealer-offer-events.proto +211 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/dealerOfferEvents/api/v1/event.proto +131 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/graphql/definitions.proto +13 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/http/field_mask.proto +46 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/sdk/definitions.proto +191 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/spi/definitions.proto +187 -0
- package/@wix/ambassador-dealer-v1-offer-event/src/main/proto/wix/spi/http_error_status.proto +24 -0
- package/@wix/ambassador-dealer-v1-offer-event/types/package.json +7 -0
- package/package.json +4 -3
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package wix.common;
|
|
4
|
+
|
|
5
|
+
import "wix/api/annotations.proto";
|
|
6
|
+
import "wix/api/validations.proto";
|
|
7
|
+
import "google/protobuf/struct.proto";
|
|
8
|
+
|
|
9
|
+
option java_multiple_files = true;
|
|
10
|
+
option java_package = "com.wix.common";
|
|
11
|
+
|
|
12
|
+
message Sorting {
|
|
13
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
14
|
+
field: "field_name"
|
|
15
|
+
field: "order"
|
|
16
|
+
};
|
|
17
|
+
// Name of the field to sort by.
|
|
18
|
+
string field_name = 1 [(.wix.api.maxLength) = 512];
|
|
19
|
+
// Sort order.
|
|
20
|
+
SortOrder order = 2;
|
|
21
|
+
// When `field_name` is a property of repeated field that is marked as `MATCH_ITEMS` and sort should be done by
|
|
22
|
+
// a specific element from a collection, filter can/should be provided to ensure correct sort value is picked.
|
|
23
|
+
//
|
|
24
|
+
// If multiple filters are provided, they are combined with AND operator.
|
|
25
|
+
//
|
|
26
|
+
// Example:
|
|
27
|
+
// Given we have document like {"id": "1", "nestedField": [{"price": 10, "region": "EU"}, {"price": 20, "region": "US"}]}
|
|
28
|
+
// and `nestedField` is marked as `MATCH_ITEMS`, to ensure that sorting is done by correct region, filter should be
|
|
29
|
+
// { fieldName: "nestedField.price", "select_items_by": [{"nestedField.region": "US"}] }
|
|
30
|
+
repeated google.protobuf.Struct select_items_by = 3 [(.wix.api.maxSize) = 10, (.wix.api.field_exposure) = PRIVATE];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
enum SortOrder {
|
|
34
|
+
ASC = 0;
|
|
35
|
+
DESC = 1;
|
|
36
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package wix.common.spi;
|
|
4
|
+
|
|
5
|
+
import "google/protobuf/wrappers.proto";
|
|
6
|
+
import "wix/api/annotations.proto";
|
|
7
|
+
import "wix/api/validations.proto";
|
|
8
|
+
|
|
9
|
+
option java_multiple_files = true;
|
|
10
|
+
option java_package = "com.wix.common";
|
|
11
|
+
|
|
12
|
+
message SpiBaseUri {
|
|
13
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
14
|
+
field: "base_uri"
|
|
15
|
+
field: "alternative_uris"
|
|
16
|
+
};
|
|
17
|
+
message AlternativeUri {
|
|
18
|
+
/*
|
|
19
|
+
Name of the method to create a custom URI for.
|
|
20
|
+
|
|
21
|
+
For `methodName`, use the name of the method in PascalCase.
|
|
22
|
+
For example, for Get Shipping Rates use `GetShippingRates`.
|
|
23
|
+
*/
|
|
24
|
+
string method_name = 1 [(.wix.api.minLength) = 3, (.wix.api.maxLength) = 128];
|
|
25
|
+
/*
|
|
26
|
+
Custom URI that Wix uses to call your server for this method. The path-suffix documented in the method will not be appended to this URI.
|
|
27
|
+
Must be a secured endpoint beginning with `https://`. For example, `https://www.my-shipping-provider.com/my-shipping-rates`.
|
|
28
|
+
*/
|
|
29
|
+
string absolute_uri = 2 [(.wix.api.minLength) = 6, (.wix.api.maxLength) = 2048];
|
|
30
|
+
}
|
|
31
|
+
/*
|
|
32
|
+
Base URI where the methods are called. Wix appends the path to the `baseUri`.
|
|
33
|
+
For example, to call the Get Shipping Rates method at `https://my-shipping-provider.com/v1/getRates`, the base URI you provide here is `https://my-shipping-provider.com/`.
|
|
34
|
+
*/
|
|
35
|
+
string base_uri = 1 [(.wix.api.minLength) = 6, (.wix.api.maxLength) = 2048];
|
|
36
|
+
// Alternate, custom URIs to replace the default URIs for specific service plugin methods.
|
|
37
|
+
repeated AlternativeUri alternative_uris = 2;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
this message is not directly used by any service,
|
|
42
|
+
it exists to describe the expected parameters that SHOULD be provided to invoked Velo methods as part of open-platform.
|
|
43
|
+
e.g. SPIs, event-handlers, etc..
|
|
44
|
+
NOTE: this context object MUST be provided as the last argument in each Velo method signature.
|
|
45
|
+
|
|
46
|
+
Example:
|
|
47
|
+
```typescript
|
|
48
|
+
export function wixStores_onOrderCanceled({ event, metadata }: OrderCanceledEvent) {
|
|
49
|
+
...
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
*/
|
|
53
|
+
message Context {
|
|
54
|
+
message IdentificationData {
|
|
55
|
+
option (.wix.api.decomposite_of) = "wix.common.IdentificationData";
|
|
56
|
+
enum IdentityType {
|
|
57
|
+
UNKNOWN = 0;
|
|
58
|
+
ANONYMOUS_VISITOR = 1;
|
|
59
|
+
MEMBER = 2;
|
|
60
|
+
WIX_USER = 3;
|
|
61
|
+
APP = 4;
|
|
62
|
+
}
|
|
63
|
+
reserved 1;
|
|
64
|
+
IdentityType identity_type = 6 [(.wix.api.readOnly) = true];
|
|
65
|
+
oneof id {
|
|
66
|
+
// ID of a site visitor that has not logged in to the site.
|
|
67
|
+
string anonymous_visitor_id = 2 [(.wix.api.format) = GUID];
|
|
68
|
+
// ID of a site visitor that has logged in to the site.
|
|
69
|
+
string member_id = 3 [(.wix.api.format) = GUID, (.wix.api.referenced_entity) = "wix.members.v1.member"];
|
|
70
|
+
// ID of a Wix user (site owner, contributor, etc.).
|
|
71
|
+
string wix_user_id = 4 [(.wix.api.format) = GUID];
|
|
72
|
+
// ID of an app.
|
|
73
|
+
string app_id = 5 [(.wix.api.format) = GUID];
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
google.protobuf.StringValue request_id = 1; // A unique identifier of the request. You may print this ID to your logs to help with future debugging and easier correlation with Wix's logs.
|
|
77
|
+
google.protobuf.StringValue currency = 2 [(.wix.api.format) = CURRENCY]; // [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-letter currency code.
|
|
78
|
+
IdentificationData identity = 3; // An object that describes the identity that triggered this request.
|
|
79
|
+
repeated string languages = 4; // A string representing a language and region in the format of `"xx-XX"`. First 2 letters represent the language code according to ISO 639-1. This is followed by a dash "-", and then a by 2 capital letters representing the region according to ISO 3166-2. For example, `"en-US"`.
|
|
80
|
+
google.protobuf.StringValue instance_id = 5 [(.wix.api.format) = GUID]; // The service provider app's instance ID.
|
|
81
|
+
google.protobuf.StringValue app_extension_id = 6 [(.wix.api.maxLength) = 256, (wix.api.field_maturity) = ALPHA]; // Extension ID in Dev Center.
|
|
82
|
+
google.protobuf.StringValue app_extension_type = 7 [(.wix.api.maxLength) = 256, (wix.api.field_maturity) = ALPHA]; // Extension type in Dev Center.
|
|
83
|
+
google.protobuf.StringValue function_name = 8 [(.wix.api.maxLength) = 256, (wix.api.field_maturity) = ALPHA]; // Invoked function.
|
|
84
|
+
|
|
85
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package wix.common.tags;
|
|
4
|
+
|
|
5
|
+
import "google/protobuf/wrappers.proto";
|
|
6
|
+
import "wix/api/annotations.proto";
|
|
7
|
+
import "wix/api/validations.proto";
|
|
8
|
+
|
|
9
|
+
option java_multiple_files = true;
|
|
10
|
+
option java_package = "com.wix.common";
|
|
11
|
+
/*
|
|
12
|
+
Common object for tags.
|
|
13
|
+
Should be use as in this example:
|
|
14
|
+
message Foo {
|
|
15
|
+
string id = 1;
|
|
16
|
+
// ...
|
|
17
|
+
Tags tags = 5
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
example of taggable entity
|
|
21
|
+
{
|
|
22
|
+
id: "123"
|
|
23
|
+
tags: {
|
|
24
|
+
tags: {
|
|
25
|
+
tag_ids:["11","22"]
|
|
26
|
+
},
|
|
27
|
+
private_tags: {
|
|
28
|
+
tag_ids: ["33", "44"]
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
*/
|
|
33
|
+
message Tags {
|
|
34
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
35
|
+
field: "tags"
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
message TagList {
|
|
39
|
+
repeated string tag_ids = 1 [(.wix.api.referenced_entity) = "wix.os.tags.v1.tag", (.wix.api.maxSize) = 100, (.wix.api.maxLength) = 5]; // List of tag IDs
|
|
40
|
+
}
|
|
41
|
+
TagList private_tags = 1; // Tags that require an additional permission in order to access them, normally not given to site members or visitors.
|
|
42
|
+
TagList tags = 2; // Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
message PublicTags {
|
|
46
|
+
option (.wix.api.decomposite_of) = "wix.common.tags.Tags";
|
|
47
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
48
|
+
field: "tags"
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
message TagList {
|
|
52
|
+
repeated string tag_ids = 1 [(.wix.api.referenced_entity) = "wix.os.tags.v1.tag", (.wix.api.maxSize) = 100, (.wix.api.maxLength) = 5]; // List of tag IDs
|
|
53
|
+
}
|
|
54
|
+
TagList tags = 2; // Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.
|
|
55
|
+
}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package wix.common;
|
|
4
|
+
|
|
5
|
+
option java_multiple_files = true;
|
|
6
|
+
option java_outer_classname = "WixLinkProto";
|
|
7
|
+
option java_package = "com.wix.common";
|
|
8
|
+
|
|
9
|
+
import "wix/api/annotations.proto";
|
|
10
|
+
import "wix/api/validations.proto";
|
|
11
|
+
import "google/protobuf/wrappers.proto";
|
|
12
|
+
|
|
13
|
+
//The link object generated by panels in the editor and used by applications in Wix
|
|
14
|
+
message WixLink {
|
|
15
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
16
|
+
field: "external"
|
|
17
|
+
};
|
|
18
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
19
|
+
field: "page"
|
|
20
|
+
};
|
|
21
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
22
|
+
field: "anchor"
|
|
23
|
+
};
|
|
24
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
25
|
+
field: "dynamic_page"
|
|
26
|
+
};
|
|
27
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
28
|
+
field: "document"
|
|
29
|
+
};
|
|
30
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
31
|
+
field: "email"
|
|
32
|
+
};
|
|
33
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
34
|
+
field: "phone"
|
|
35
|
+
};
|
|
36
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
37
|
+
field: "address"
|
|
38
|
+
};
|
|
39
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
40
|
+
field: "whats_app"
|
|
41
|
+
};
|
|
42
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
43
|
+
field: "tpa_page_link"
|
|
44
|
+
};
|
|
45
|
+
oneof Link {
|
|
46
|
+
ExternalLink external = 1; // External link type
|
|
47
|
+
PageLink page = 2; // Page link type
|
|
48
|
+
AnchorLink anchor = 3; // Anchor link type
|
|
49
|
+
DynamicPageLink dynamic_page = 4; // Dynamic page link type
|
|
50
|
+
DocumentLink document = 5; // Document link type
|
|
51
|
+
EmailLink email = 6; // Email link type
|
|
52
|
+
PhoneLink phone = 7; // Phone link type
|
|
53
|
+
AddressLink address = 8; // Address link type
|
|
54
|
+
WhatsAppLink whats_app = 9; // WhatsApp link type
|
|
55
|
+
TpaPageLink tpa_page = 10; // TPA link type
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
message ExternalLink {
|
|
60
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
61
|
+
field: "url"
|
|
62
|
+
};
|
|
63
|
+
//The url of the page
|
|
64
|
+
string url = 1 [(.wix.api.format) = WEB_URL];
|
|
65
|
+
//Where this link should open, supports _self and _blank or any name the user chooses. _self means same page, _blank means new page.
|
|
66
|
+
google.protobuf.StringValue target = 2;
|
|
67
|
+
//rel of link
|
|
68
|
+
repeated LinkRel rel = 3 [(.wix.api.maxSize) = 20, (.wix.api.field_exposure) = PRIVATE];
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
message PageLink {
|
|
72
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
73
|
+
field: "page_id"
|
|
74
|
+
};
|
|
75
|
+
//The page id we want from the site
|
|
76
|
+
string page_id = 1;
|
|
77
|
+
//Where this link should open, supports _self and _blank or any name the user chooses. _self means same page, _blank means new page.
|
|
78
|
+
google.protobuf.StringValue target = 2;
|
|
79
|
+
//rel of link
|
|
80
|
+
repeated LinkRel rel = 3 [(wix.api.maxSize) = 20];
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
message AnchorLink {
|
|
84
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
85
|
+
field: "anchor_name"
|
|
86
|
+
field: "anchor_data_id"
|
|
87
|
+
field: "page_id"
|
|
88
|
+
};
|
|
89
|
+
//The name of the anchor
|
|
90
|
+
string anchor_name = 1;
|
|
91
|
+
//The data id (from the JSON page) of the anchor that should be used
|
|
92
|
+
string anchor_data_id = 2;
|
|
93
|
+
//The page id we want from the site
|
|
94
|
+
string page_id = 3;
|
|
95
|
+
//rel of link
|
|
96
|
+
repeated LinkRel rel = 4 [(wix.api.maxSize) = 20];
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
message DynamicPageLink {
|
|
100
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
101
|
+
field: "router_id"
|
|
102
|
+
field: "inner_route"
|
|
103
|
+
field: "anchor_data_id"
|
|
104
|
+
};
|
|
105
|
+
//The router that handles this link
|
|
106
|
+
string router_id = 1;
|
|
107
|
+
//The path data we'd like
|
|
108
|
+
string inner_route = 2;
|
|
109
|
+
//The data id (from the JSON page) of the anchor that should be used
|
|
110
|
+
google.protobuf.StringValue anchor_data_id = 3;
|
|
111
|
+
//rel of link
|
|
112
|
+
repeated LinkRel rel = 4 [(wix.api.maxSize) = 20];
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
message DocumentLink {
|
|
116
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
117
|
+
field: "doc_id"
|
|
118
|
+
field: "name"
|
|
119
|
+
};
|
|
120
|
+
//The id of the document
|
|
121
|
+
string doc_id = 1;
|
|
122
|
+
//The name of the document for download purposes
|
|
123
|
+
google.protobuf.StringValue name = 2;
|
|
124
|
+
//If this document can be indexed by scrapers, default is false
|
|
125
|
+
bool indexable = 3;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
message EmailLink {
|
|
129
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
130
|
+
field: "recipient"
|
|
131
|
+
field: "subject"
|
|
132
|
+
field: "body"
|
|
133
|
+
};
|
|
134
|
+
//The email we will be sending a message to
|
|
135
|
+
string recipient = 1 [(.wix.api.format) = EMAIL];
|
|
136
|
+
//The subject of the email
|
|
137
|
+
google.protobuf.StringValue subject = 2;
|
|
138
|
+
//The body of the email
|
|
139
|
+
google.protobuf.StringValue body = 3;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
message PhoneLink {
|
|
143
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
144
|
+
field: "phone_number"
|
|
145
|
+
};
|
|
146
|
+
//The phone number we want to link to
|
|
147
|
+
string phone_number = 1 [(.wix.api.pii) = true, (.wix.api.format) = PHONE, (.wix.api.maxLength) = 100];
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
message AddressLink {
|
|
151
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
152
|
+
field: "address"
|
|
153
|
+
};
|
|
154
|
+
//An address that we can link to
|
|
155
|
+
string address = 1 [(.wix.api.pii) = true];
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
message WhatsAppLink {
|
|
159
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
160
|
+
field: "phone_number"
|
|
161
|
+
};
|
|
162
|
+
//The whatsApp phone number we want to connect with
|
|
163
|
+
string phone_number = 1 [(.wix.api.pii) = true, (.wix.api.format) = PHONE];
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
//Link to a TPA page
|
|
167
|
+
message TpaPageLink {
|
|
168
|
+
option (.wix.api.decomposition_minimum_fields) = {
|
|
169
|
+
field: "item_type_identifier"
|
|
170
|
+
field: "item_id"
|
|
171
|
+
field: "page_id"
|
|
172
|
+
field: "app_definition_id"
|
|
173
|
+
field: "path"
|
|
174
|
+
};
|
|
175
|
+
//Type of item (e.g. 'wix.stores.sub_pages.product')
|
|
176
|
+
string item_type_identifier = 1;
|
|
177
|
+
//Id of linked item
|
|
178
|
+
string item_id = 2;
|
|
179
|
+
//Id of linked page
|
|
180
|
+
string page_id = 3;
|
|
181
|
+
//Id of app being linked to (AppDefId)
|
|
182
|
+
string app_definition_id = 4;
|
|
183
|
+
//The relativepath of linked page
|
|
184
|
+
string path = 5;
|
|
185
|
+
//rel of link
|
|
186
|
+
repeated LinkRel rel = 6 [(wix.api.maxSize) = 20];
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
//The 'rel' attribute of the link. The rel attribute defines the relationship between a linked resource and the current document.
|
|
190
|
+
//Further reading (also about different possible rel types): https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel
|
|
191
|
+
//Following are the accepted 'rel' types by Wix applications.
|
|
192
|
+
enum LinkRel {
|
|
193
|
+
// default (not implemented)
|
|
194
|
+
unknown_link_rel = 0 [(.wix.api.enum_maturity) = NOT_IMPLEMENTED];
|
|
195
|
+
//Indicates that the current document's original author or publisher does not endorse the referenced document.
|
|
196
|
+
nofollow = 1;
|
|
197
|
+
//Instructs the browser to navigate to the target resource without granting the new browsing context access to the document that opened it.
|
|
198
|
+
noopener = 2;
|
|
199
|
+
//No Referer header will be included. Additionally, has the same effect as noopener.
|
|
200
|
+
noreferrer = 3;
|
|
201
|
+
//Indicates a link that resulted from advertisements or paid placements.
|
|
202
|
+
sponsored = 4;
|
|
203
|
+
}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package wix.dealerOfferEvents.api.v1;
|
|
4
|
+
|
|
5
|
+
import "google/api/annotations.proto";
|
|
6
|
+
import "google/protobuf/timestamp.proto";
|
|
7
|
+
import "google/protobuf/field_mask.proto";
|
|
8
|
+
import "google/protobuf/wrappers.proto";
|
|
9
|
+
import "google/protobuf/struct.proto";
|
|
10
|
+
import "wix/api/entity.proto";
|
|
11
|
+
import "wix/api/annotations.proto";
|
|
12
|
+
import "wix/api/validations.proto";
|
|
13
|
+
import "wix/common/query.proto";
|
|
14
|
+
import "wix/common/paging.proto";
|
|
15
|
+
|
|
16
|
+
import "wix/dealerOfferEvents/api/v1/event.proto";
|
|
17
|
+
|
|
18
|
+
option java_package = "com.wix.dealerOfferEvents.api.v1";
|
|
19
|
+
|
|
20
|
+
service DealerOfferEventsService {
|
|
21
|
+
option (wix.api.service_entity).message = "wix.dealerOfferEvents.api.v1.OfferEvent";
|
|
22
|
+
option (wix.api.service_exposure) = INTERNAL;
|
|
23
|
+
|
|
24
|
+
// Report an event for a Dealer Offer for a specific user identity and metasite.
|
|
25
|
+
// required fields: event.type, event.offer_id and event.real_estate_id (placementId) in addition - some of the event types require specific payload.
|
|
26
|
+
// For example MAIN_CTA_CLICK needs to be reported with main_cta_click payload that contains additional data on the event such as target_url.
|
|
27
|
+
// VIEW event does not require any additional information.
|
|
28
|
+
//
|
|
29
|
+
// Identity and metasite are taken implicitly from request by default - NO NEED TO PASS SUCH INFO.
|
|
30
|
+
// If an event is reported from metasite(BM/EDITOR), MAKE SURE request is sent with an authorization header.
|
|
31
|
+
//
|
|
32
|
+
// For some EDGE CASES - privileged apps with DEALER.OFFER_EVENTS_EXPLICIT_CONTEXT can report on behalf of user and fill identity(user_id and msid) fields.
|
|
33
|
+
rpc ReportEvent (ReportEventRequest) returns (ReportEventResponse) {
|
|
34
|
+
option (google.api.http).post = "/v1/dealer-offer-events/{event.offer_id}";
|
|
35
|
+
|
|
36
|
+
option (wix.api.required) = "ReportEventRequest.event.offer_id";
|
|
37
|
+
option (wix.api.maturity) = GA;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
// return list of offer events summary for a bulk of offer ids.
|
|
41
|
+
// a summary response contains last event happened for each event type or event counts.
|
|
42
|
+
// - you have to provide field masks for all the event types you want to get for each offer.
|
|
43
|
+
// BY DEFAULT Summaries will be filtered by the implicit identity and metasite in the request.
|
|
44
|
+
//
|
|
45
|
+
// FOR SOME EDGE CASES - special permission DEALER.OFFER_EVENTS_EXPLICIT_CONTEXT is required in order to pass explicit identity and metasite filter.
|
|
46
|
+
//
|
|
47
|
+
// You can request event summary data for specific offers or specific campaigns.
|
|
48
|
+
//
|
|
49
|
+
// In case campaign level events summary requested, cumulative data is returned:
|
|
50
|
+
// — events counters are a sum of all campaign's offer events counters
|
|
51
|
+
// — lastEvent for campaign is the lastEvent of the "latest" offer within campaign
|
|
52
|
+
// — etc.
|
|
53
|
+
//
|
|
54
|
+
// If summary_filter.placement_id is set, then only offers belonging to campaign & placement is counted
|
|
55
|
+
// for campaign level summary
|
|
56
|
+
//
|
|
57
|
+
// If offer_ids is empty — you get empty result.events_summary
|
|
58
|
+
// If campaign_ids empty — you get empty result.campaign_events_summary
|
|
59
|
+
//
|
|
60
|
+
rpc ListEventsSummary (ListEventsSummaryRequest) returns (ListEventsSummaryResponse) {
|
|
61
|
+
option (google.api.http).get = "/v1/dealer-offer-events/summary";
|
|
62
|
+
option (wix.api.required) = "ListEventsSummaryRequest.summary_filter.field_mask";
|
|
63
|
+
option (wix.api.maturity) = GA;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
// ONLY SUPPORTED FOR EVENT TYPE AGENT_MARK - USER JOURNEY USE CASES
|
|
67
|
+
// Returns list of offer events for given filters.
|
|
68
|
+
// Filters: offer_id (required), event_type (required, only AGENT_MARK); siteId is taken implicitly
|
|
69
|
+
// from aspects, so they must be server signed with siteId.
|
|
70
|
+
// Supported `paging`. Events limit by default is 200.
|
|
71
|
+
// Not supported 'sort`, `fields` and `fieldsets`. Events are sorted in descending order by creation_date.
|
|
72
|
+
//
|
|
73
|
+
// Query examples:
|
|
74
|
+
// query: { filter: { offer_id: <uuid> }, event_type: 'AGENT_MARK'}}
|
|
75
|
+
// query: { filter: { offer_id: { $in: [<uuid1>, <uuid2>] }, event_type: 'AGENT_MARK'}}
|
|
76
|
+
// query: { filter: { offer_id: { $in: [<uuid1>, <uuid2>] }, event_type: 'AGENT_MARK'}, paging: { offset: 10, limit: 100 } }
|
|
77
|
+
rpc QueryEvents (QueryEventsRequest) returns (QueryEventsResponse) {
|
|
78
|
+
|
|
79
|
+
option (google.api.http).get = "/v1/dealer-offer-events/query";
|
|
80
|
+
|
|
81
|
+
option (wix.api.required) = "QueryEventsRequest.query";
|
|
82
|
+
option (wix.api.required) = "QueryEventsRequest.query.filter";
|
|
83
|
+
option (wix.api.maturity) = ALPHA;
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
message ReportEventRequest {
|
|
89
|
+
// Event properties container
|
|
90
|
+
OfferEvent event = 1;
|
|
91
|
+
|
|
92
|
+
// Deviant Art specific use-case: signed jwt token with uuid of deviant art user in wix bi infra
|
|
93
|
+
google.protobuf.StringValue deviant_art_user_id = 2 [(.wix.api.maxLength) = 4096];
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
message ReportEventResponse {
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
message ListEventsSummaryRequest {
|
|
101
|
+
// each element in response.eventsSummary is a summary of offerId
|
|
102
|
+
repeated string offer_ids = 1 [(wix.api.format) = GUID];
|
|
103
|
+
|
|
104
|
+
// each element in response.campaignEventsSummary is a summary of corresponding campaignId
|
|
105
|
+
repeated string campaign_ids = 3 [(wix.api.format) = GUID];
|
|
106
|
+
|
|
107
|
+
// applied to each requested offer or each offer within requested campaigns
|
|
108
|
+
// all fields are optional - if not passing fields mask then no summary will be returned
|
|
109
|
+
SummaryFilter summary_filter = 2;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
message SummaryFilter {
|
|
113
|
+
// OPNIONAL - only events reported with this user id will be taken into account - supported by AGENT_MARK only
|
|
114
|
+
google.protobuf.StringValue user_id = 1 [(wix.api.format) = GUID];
|
|
115
|
+
|
|
116
|
+
// OPNIONAL - only events reported with this account id will be taken into account
|
|
117
|
+
google.protobuf.StringValue target_account_id = 2 [(wix.api.format) = GUID];
|
|
118
|
+
|
|
119
|
+
// OPNIONAL - only events reported with this site id will be taken into account
|
|
120
|
+
google.protobuf.StringValue site_id = 3 [(wix.api.format) = GUID];
|
|
121
|
+
|
|
122
|
+
reserved 4;
|
|
123
|
+
|
|
124
|
+
// which placement offers take into account in campaign scope (applicable only for campaign_ids requests)
|
|
125
|
+
google.protobuf.StringValue placement_id = 6 [(wix.api.format) = GUID];
|
|
126
|
+
// todo: add (wix.api.referenced_entity) = "wix.dealer.v1.placement"]; when it's on BO API
|
|
127
|
+
|
|
128
|
+
// Array of strings that will determine which events will be included in EventsSummary response
|
|
129
|
+
// In the format of EventsSummary fields "<event_usecase>.<event_type>"
|
|
130
|
+
//
|
|
131
|
+
// Possible values for VIEW events:
|
|
132
|
+
// - lastEvent.VIEW
|
|
133
|
+
// - eventsCount.VIEW
|
|
134
|
+
// Possible values for MAIN_CTA_CLICK events:
|
|
135
|
+
// * get last main cta click of any action type:
|
|
136
|
+
// - lastEvent.MAIN_CTA_CLICK
|
|
137
|
+
// - eventsCount.MAIN_CTA_CLICK
|
|
138
|
+
//
|
|
139
|
+
// Possible values for AGENT_MARK events:
|
|
140
|
+
// * get last event of any status:
|
|
141
|
+
// - lastEvent.AGENT_MARK
|
|
142
|
+
//
|
|
143
|
+
//
|
|
144
|
+
// For example:
|
|
145
|
+
// "lastEvent.VIEW,lastEvent.AGENT_MARK,eventsCount.MAIN_CTA_CLICK"
|
|
146
|
+
//
|
|
147
|
+
// will result in (if CLOSE event exists for given offer/user/metasite)
|
|
148
|
+
// {
|
|
149
|
+
// lastEvent: {
|
|
150
|
+
// VIEW: {...(OfferEvent data)},
|
|
151
|
+
// AGENT_MARK: {...(OfferEvent data)}
|
|
152
|
+
// },
|
|
153
|
+
// eventsCount:{ MAIN_CTA_CLICK: { totalCount: 20 }}
|
|
154
|
+
// }
|
|
155
|
+
//
|
|
156
|
+
google.protobuf.FieldMask field_mask = 5;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
message EventCounts {
|
|
160
|
+
// counter
|
|
161
|
+
google.protobuf.Int32Value total_count = 1;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
message EventsSummary {
|
|
165
|
+
// If set - means this summary is about the offer
|
|
166
|
+
google.protobuf.StringValue offer_id = 1 [(wix.api.format) = GUID];
|
|
167
|
+
// todo: add (wix.api.referenced_entity) = "wix.dealer.v1.backoffice_offer"]; when it's on BO API
|
|
168
|
+
|
|
169
|
+
// If set - means this summary is about the campaign
|
|
170
|
+
google.protobuf.StringValue campaign_id = 5 [(wix.api.format) = GUID];
|
|
171
|
+
// todo: add (wix.api.referenced_entity) = "wix.dealer.v1.campaign"]; when it's on BO API
|
|
172
|
+
|
|
173
|
+
// Campaign summary: Last event per type among all offers within campaign (+ placement if filter specified)
|
|
174
|
+
// Offer summary: Last event per type for given offer
|
|
175
|
+
//
|
|
176
|
+
// key is a value from EventType enum
|
|
177
|
+
// OfferEvent enity eill be returned partailly dependeing on event type - see details on entity
|
|
178
|
+
map<string, OfferEvent> last_event = 3;
|
|
179
|
+
|
|
180
|
+
// Campaign summary: cumulative counters for all offer events of the same type within this campaign (+ placement if filter specified)
|
|
181
|
+
// Offer summary: event counts per type for given offer
|
|
182
|
+
//
|
|
183
|
+
// key is a value from EventType enum
|
|
184
|
+
map<string, EventCounts> events_count = 10;
|
|
185
|
+
|
|
186
|
+
reserved 2, 4;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
message ListEventsSummaryResponse {
|
|
190
|
+
// list of event summaries for requested offer ids, will be empty if only campaign events requested
|
|
191
|
+
repeated EventsSummary events_summary = 1;
|
|
192
|
+
|
|
193
|
+
// list of event summaries for requested campaign ids, will be empty if only offer events requested
|
|
194
|
+
repeated EventsSummary campaign_events_summary = 2;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
message QueryEventsRequest {
|
|
198
|
+
// Query examples:
|
|
199
|
+
// query: { filter: { offer_id: <uuid> }, event_type: 'AGENT_MARK'}}
|
|
200
|
+
// query: { filter: { offer_id: { $in: [<uuid1>, <uuid2>] }, event_type: 'AGENT_MARK'}}
|
|
201
|
+
// query: { filter: { offer_id: { $in: [<uuid1>, <uuid2>] }, event_type: 'AGENT_MARK'}, paging: { offset: 10, limit: 100 } }
|
|
202
|
+
wix.common.Query query = 1;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
message QueryEventsResponse {
|
|
206
|
+
// List of offer events
|
|
207
|
+
repeated OfferEvent events = 1;
|
|
208
|
+
|
|
209
|
+
// result paging status
|
|
210
|
+
wix.common.PagingMetadata paging_metadata = 2;
|
|
211
|
+
}
|