Netsuite - REST API - 使用基于令牌的身份验证 (TBA) 进行查询 -(在 Python 中)

Netsuite - REST API - Making query with Token Based Authentication (TBA) - (in Python)

这是对使用基于 Netsuite 令牌的身份验证 (TBA) REST web 服务的成功调用的跟进,

我想获得一些关于如何执行查询的指导。

我应该读这样的记录(请看截图)

https://gist.github.com/axilaris/4386c3537d04737d3775c156562b7545 <-- 这是成功运行的 TBA 的 python 代码。我想知道如何构建下一步如何执行查询并读取特定记录(如截图所示)。

这是一条自定义记录,其 ID 类似于 customrecord1589

要查询特定记录:您将需要在 Netsuite 中创建/部署类似于以下内容的 RESTlet:

/**
 * @NApiVersion 2.1
 * @NScriptType Restlet
 */
define([
    "N/log",
    "N/search",
], function (log, search) {
    
    function post(context) {
        return JSON.stringify(getCustomRecords(context));
    }

    function getCustomRecords(context) {
        log.debug('POST Context', context);
        return search.lookupFields({
            //Change CUSTOM_RECORD to the type of custom record you are querying
            type: search.Type.CUSTOM_RECORD + '1589',
            id: context.id,
            columns: context.fields,
        });
    }

    return {
        post: post,
    };
});

在您的 Python 脚本中:确保将请求的 URL 更改为这个新 RESTlet 的部署 URL。此外,请确保在 POST 请求负载中传递您需要的任何参数(如我的示例中的 'id' 或 'fields')。所以代替:

payload = {
 "name":"value",
 "foo":"bar",
 "duck":"hunt",
}

通过

payload = {
 "id":"9999999",
 "fields": ["custrecord_field1", "custrecord_field2"],
}

其中 id 是您要查询的记录的 internalid,fields 数组是您要从中获取值的字段的 internalid。

如果成功,结果应该在您的 python 脚本中显示为 conn.text!