123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- // Copyright 2021 Tencent Inc. All rights reserved.
- //
- // 微信支付营销系统开放API
- //
- // 新增立减金api
- //
- // API version: 3.4.0
- // Code generated by WechatPay APIv3 Generator based on [OpenAPI Generator](https://openapi-generator.tech); DO NOT EDIT.
- package cashcoupons
- import (
- "context"
- "fmt"
- nethttp "net/http"
- neturl "net/url"
- "git.nanodreamtech.com/sg/wechatpay-go/core"
- "git.nanodreamtech.com/sg/wechatpay-go/core/consts"
- "git.nanodreamtech.com/sg/wechatpay-go/services"
- )
- type CallBackUrlApiService services.Service
- // QueryCallback 查询代金券消息通知地址
- //
- // 通过此接口查询营销事件通知的回调URL地址
- //
- // 接口频率:2000QPS
- //
- // 前置条件:开通营销事件推送产品权限
- func (a *CallBackUrlApiService) QueryCallback(ctx context.Context, req QueryCallbackRequest) (resp *Callback, result *core.APIResult, err error) {
- var (
- localVarHTTPMethod = nethttp.MethodGet
- localVarPostBody interface{}
- localVarQueryParams neturl.Values
- localVarHeaderParams = nethttp.Header{}
- )
- localVarPath := consts.WechatPayAPIServer + "/v3/marketing/favor/callbacks"
- // Make sure All Required Params are properly set
- if req.Mchid == nil {
- return nil, nil, fmt.Errorf("field `Mchid` is required and must be specified in QueryCallbackRequest")
- }
- // Setup Query Params
- localVarQueryParams = neturl.Values{}
- localVarQueryParams.Add("mchid", core.ParameterToString(*req.Mchid, ""))
- // Determine the Content-Type Header
- localVarHTTPContentTypes := []string{}
- // Setup Content-Type
- localVarHTTPContentType := core.SelectHeaderContentType(localVarHTTPContentTypes)
- // Perform Http Request
- result, err = a.Client.Request(ctx, localVarHTTPMethod, localVarPath, localVarHeaderParams, localVarQueryParams, localVarPostBody, localVarHTTPContentType)
- if err != nil {
- return nil, result, err
- }
- // Extract Callback from Http Response
- resp = new(Callback)
- err = core.UnMarshalResponse(result.Response, resp)
- if err != nil {
- return nil, result, err
- }
- return resp, result, nil
- }
- // SetCallback 设置代金券消息通知地址
- //
- // 通过此接口设置营销事件通知的回调URL地址
- //
- // 接口频率:1000/min
- //
- // 前置条件:开通营销事件推送产品权限
- //
- // 可接收营销相关的事件通知:核销通知
- //
- // 注意:
- //
- // 1. 该接口只能创建商户号进行设置
- func (a *CallBackUrlApiService) SetCallback(ctx context.Context, req SetCallbackRequest) (resp *SetCallbackResponse, result *core.APIResult, err error) {
- var (
- localVarHTTPMethod = nethttp.MethodPost
- localVarPostBody interface{}
- localVarQueryParams neturl.Values
- localVarHeaderParams = nethttp.Header{}
- )
- localVarPath := consts.WechatPayAPIServer + "/v3/marketing/favor/callbacks"
- // Make sure All Required Params are properly set
- // Setup Body Params
- localVarPostBody = req
- // Determine the Content-Type Header
- localVarHTTPContentTypes := []string{"application/json"}
- // Setup Content-Type
- localVarHTTPContentType := core.SelectHeaderContentType(localVarHTTPContentTypes)
- // Perform Http Request
- result, err = a.Client.Request(ctx, localVarHTTPMethod, localVarPath, localVarHeaderParams, localVarQueryParams, localVarPostBody, localVarHTTPContentType)
- if err != nil {
- return nil, result, err
- }
- // Extract SetCallbackResponse from Http Response
- resp = new(SetCallbackResponse)
- err = core.UnMarshalResponse(result.Response, resp)
- if err != nil {
- return nil, result, err
- }
- return resp, result, nil
- }
|