使用场景:

当积分主体配置为“外部积分系统”时,触发积分明细查询业务时,积分集成服务会请求积分类型自建应用中所配置的接口地址。


**接口地址** `自建应用配置`

**请求方式** `POST`

**consumes** `["application/json"]`

**produces** `["application/json"]`

**接口描述** `企业级接口,hearer必须携带X-Token`

**应用权限** `积分 -> 外部积分-明细查询`

**注意事项** 





# 请求参数

***

### 请求头参数

| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
| ------ | ------ | ------ | ------ | ------ | ------ |
| X-Token | 自建应用访问token | header | true | string | |

### 公共参数

| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
| ------ | ------ | ------ | ------ | ------ | ------ |
| openids | 身份识别标识集合 | body | false | array | [身份识别标识](#身份识别标识) |
| phoneList | 手机号码列表 | body | false | array | [手机号码](#手机号码) |
| audienceUserIds | 客户档案ID集合,客户档案ID为long类型 | body | false | array |  |
| exchangeTypes | 变动类型集合,1 获得;2 消耗;3 过期积分 | body | false | array | |
| startTime | 开始时间 | body | false | date | |
| endTime | 截止时间 | body | false | date | |
| pageNo | 页码,默认为1 | body | false | int | |
| pageSize | 页面大小,默认为20 | body | false | int | |
| instanceAppId| 自建应用appid	| string | true | String | |
| thirdCompanyId| 开放平台登陆componyId	| string | 非开放平台用户为空	| String | |
| orgId| 企业id		| string | true 	| String | |

### 身份识别标识

| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
| ------ | ------ | ------ | ------ | ------ | ------ |
| openid |  | body | false | string | |
| unionid |  | body | false | string | |
| fromTo | 应用类型(contentminiapp:小程序, workwechat:企业微信外部联系人, gzh:公众号, workwechatgroup:客户群) | body | false | string | |
| appid | 应用ID | body | false | string | |
| jcappid | 系统集成应用实例ID | body | false | long | |
| identityId | 身份识别类型ID | body | false | string | |
| identityType | 身份识别类型(phone: 手机号码, id: 第三方用户ID, openid: 公众号openid, unionid: 开放平台unionid) | body | false | string | |

### 手机号码

| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
| ------ | ------ | ------ | ------ | ------ | ------ |
| phone | 手机号 | body | false | string | |
| isVerify | 是否验证(0:未验证, 1:已验证) | body | false | string | |

### 请求示例

```json
{
	"appInstanceId": 0,
	"audienceUserIds": [860484273911119872],
	"endTime": "",
	"exchangeTypes": [],
	"openids": [
		{
			"appid": "",
			"fromTo": "",
			"identityId": "",
			"identityType": "",
			"jcappid": 0,
			"openid": "",
			"unionid": ""
		}
	],
	"orgId": "d515fa4b-8def-4188-8415-92632581795c",
    "instanceAppId": "Ipu_t60KoV-gTTtCSkFMWtrkTIA",
    "thirdCompanyId": "0707",
	"pageNo": 1,
	"pageSize": 10,
	"phoneList": [
		{
			"isVerify": "",
			"phone": ""
		}
	],
	"startTime": ""
}
```





# 响应参数

***


| 参数名称 | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema |
| ------ | ------ | ------ | ------ | ------ | ------ |
| code | 状态码 | body | true | string | |
| errorCode | 异常码 | body | true | string | |
| msg | 描述 | body | true | string | |
| data | 积分明细分页结果 | body | true | object | [积分明细分页结果](#积分明细分页结果) |

### 积分明细分页结果

| 参数名称   | 参数说明 | 请求类型 | 是否必须 | 数据类型 | schema                        |
| ---------- | -------- | -------- | -------- | -------- | ----------------------------- |
| pageNo     | 页码     | body     | true     | int      |                               |
| pageSize   | 页面大小 | body     | true     | int      |                               |
| sort       | 排序规则 | body     | true     | string   |                               |
| order      | 排序字段 | body     | true     | string   |                               |
| totalCount | 总记录数 | body     | true     | int      |                               |
| list       | 当页数据 | body     | true     | array    | [积分明细信息](#积分明细信息) |

### 积分明细信息

| 参数名称       | 参数说明                             | 请求类型 | 是否必须 | 数据类型 | schema |
| -------------- | ------------------------------------ | -------- | -------- | -------- | ------ |
| pointRecordId  | 积分记录ID                           | body     | false    | long     |        |
| pointRuleId    | 积分规则ID                           | body     | false    | long     |        |
| orgId          | 企业ID                               | body     | true     | string   |        |
| audienceUserId | 客户档案ID                           | body     | true     | string   |        |
| nickName       | 用户昵称                             | body     | false    | int      |        |
| avatar         | 用户头像                             | body     | false    | string   |        |
| contentId      | 内容ID                               | body     | false    | string   |        |
| contentName    | 内容名称                             | body     | false    | string   |        |
| eventType      | 行为类型                             | body     | false    | string   |        |
| exchangeType   | 变动类型,1 获得;2 消耗;3 过期积分 | body     | true     | int      |        |
| exchangePoint  | 变动积分值                           | body     | true     | int      |        |
| remark         | 备注                                 | body     | true     | string   |        |
| actionTime     | 操作时间                             | body     | true     | date     |        |
| pointSource    | 积分来源 1 行为积分 2 分销积分       | body     | false    | int      |        |
| ext            | 扩展信息                             | body     | false    | string   |        |

### 响应状态

| 状态码 | 说明 | schema |
| ------ | ------ | ------ |
| 200 | OK | |
| 201 | Created | |
| 401 | Unauthorized | |
| 403 | Forbidden | |
| 404 | Not Found | |

### 响应示例

```json
{
  "code": "200",
  "errorCode": "SUCCESS",
  "msg": "ok",
  "data": {
    "pageNo": 1,
    "pageSize": 10,
    "sort": "desc",
    "order": "action_time",
    "totalCount": 4,
    "list": [
      {
        "pointRecordId": null,
        "pointRuleId": null,
        "orgId": "d515fa4b-8def-4188-8415-92632581795c",
        "audienceUserId": "860484273911119872",
        "nickName": null,
        "avatar": null,
        "contentId": null,
        "contentName": null,
        "eventType": "",
        "exchangeType": 2,
        "exchangePoint": 10,
        "remark": "测试减少",
        "actionTime": 1636025874340,
        "pointSource": 1,
        "ext": "{\"relateBizCode\":\"业务编码\"}"
      }
    ]
  }
}
```