1package api // import "github.com/SevereCloud/vksdk/v2/api"
2
3import (
4	"github.com/SevereCloud/vksdk/v2/object"
5)
6
7// LeadsCheckUserResponse struct.
8type LeadsCheckUserResponse object.LeadsChecked
9
10// LeadsCheckUser checks if the user can start the lead.
11//
12// https://vk.com/dev/leads.checkUser
13func (vk *VK) LeadsCheckUser(params Params) (response LeadsCheckUserResponse, err error) {
14	err = vk.RequestUnmarshal("leads.checkUser", &response, params)
15	return
16}
17
18// LeadsCompleteResponse struct.
19type LeadsCompleteResponse object.LeadsComplete
20
21// LeadsComplete completes the lead started by user.
22//
23// https://vk.com/dev/leads.complete
24func (vk *VK) LeadsComplete(params Params) (response LeadsCompleteResponse, err error) {
25	err = vk.RequestUnmarshal("leads.complete", &response, params)
26	return
27}
28
29// LeadsGetStatsResponse struct.
30type LeadsGetStatsResponse object.LeadsLead
31
32// LeadsGetStats returns lead stats data.
33//
34// https://vk.com/dev/leads.getStats
35func (vk *VK) LeadsGetStats(params Params) (response LeadsGetStatsResponse, err error) {
36	err = vk.RequestUnmarshal("leads.getStats", &response, params)
37	return
38}
39
40// LeadsGetUsersResponse struct.
41type LeadsGetUsersResponse object.LeadsEntry
42
43// LeadsGetUsers returns a list of last user actions for the offer.
44//
45// https://vk.com/dev/leads.getUsers
46func (vk *VK) LeadsGetUsers(params Params) (response LeadsGetUsersResponse, err error) {
47	err = vk.RequestUnmarshal("leads.getUsers", &response, params)
48	return
49}
50
51// LeadsMetricHitResponse struct.
52type LeadsMetricHitResponse struct {
53	Result       object.BaseBoolInt `json:"result"`        // Information whether request has been processed successfully
54	RedirectLink string             `json:"redirect_link"` // Redirect link
55}
56
57// LeadsMetricHit counts the metric event.
58//
59// https://vk.com/dev/leads.metricHit
60func (vk *VK) LeadsMetricHit(params Params) (response LeadsMetricHitResponse, err error) {
61	err = vk.RequestUnmarshal("leads.metricHit", &response, params)
62	return
63}
64
65// LeadsStartResponse struct.
66type LeadsStartResponse object.LeadsStart
67
68// LeadsStart creates new session for the user passing the offer.
69//
70// https://vk.com/dev/leads.start
71func (vk *VK) LeadsStart(params Params) (response LeadsStartResponse, err error) {
72	err = vk.RequestUnmarshal("leads.start", &response, params)
73	return
74}
75