SugarCRM API-筛选与POST相关的模块字段

SugarCRM API-筛选与POST相关的模块字段,sugarcrm,Sugarcrm,我正在尝试使用RESTAPI检索记录列表及其相关模块字段之一。让我们假设客户和机会 因此,在fields参数中定义相关模块: 根据相同的文件,其结果类似于: 这正是我所需要的,但我正在尝试使用POST方法来实现这一点。因此,按照相同的路径,我(使用邮递员)发送: PS:我尝试了所有双引号的组合。逃脱了,没有逃脱,不管有没有,他们都给了我同样的结果,那就是: 消息在pt BR中,但它表示“您的请求参数之一错误”。HTTP状态代码为422-不可处理实体 我做错了什么?我什么都试过了,只是不知

我正在尝试使用RESTAPI检索记录列表及其相关模块字段之一。让我们假设客户和机会

因此,在fields参数中定义相关模块:

根据相同的文件,其结果类似于:

这正是我所需要的,但我正在尝试使用POST方法来实现这一点。因此,按照相同的路径,我(使用邮递员)发送:

PS:我尝试了所有双引号的组合。逃脱了,没有逃脱,不管有没有,他们都给了我同样的结果,那就是:

消息在pt BR中,但它表示“您的请求参数之一错误”。HTTP状态代码为422-不可处理实体


我做错了什么?我什么都试过了,只是不知道怎么做。看起来文档中提到了一些根本不起作用或根本不存在的东西。

好吧,所以经过一些研究,Postman似乎使用了类似于Chrome的东西,实际上不可能发送带有正文中值的GET请求。然而,你可以

将值编码到URL并通过邮递员发送:

https://yoursite.com/rest/v10/Accounts?filter%5B0%5D%5Bopportunities.date_modified%5D%5B%24gte%5D%3D2016-02-29T00%3A00%3A00&fields=cpf_c,opportunities&max_num=10
使用卷曲:

curl -X GET -H Host:yoursite.com -H OAuth-Token:d49c8fd4-0ae0-d9fb-7ab8-5846e5a3fa86 -H Cache-Control:no-cache -d '{"filter":[{"opportunities.date_modified":{"$gte":"2016-02-29T00:00:00"}}],"fields":["cpf_c","opportunities"],"max_num":"10"}' https://yoursite.com/rest/v10/Accounts
或者直接构建HTTP请求,并包含正文:

GET https://yoursite.com/rest/v10/Accounts HTTP/1.1
Host: yoursite.com
OAuth-Token:d49c8fd4-0ae0-d9fb-7ab8-5846e5a3fa86
Cache-Control:no-cache

{"filter":[{"opportunities.date_modified":{"$gte":"2016-02-29T00:00:00"}}],"fields":["cpf_c","opportunities"],"max_num":"10"}
为了测试这一点,我创建了3个帐户,其中2个有机会链接。当我使用“名称”而不是您的“cpf_c”字段时,回答是这样的:


希望这有帮助。

你是说?是的@Reisclef。正如我所说,我正试图通过POST从GET文档中执行相同的操作(因为我相信它们的行为是相同的,这只是文档完整性的问题)。顺便说一句,我也试过使用GET,但它也不起作用。老实说,它有点奇怪。POST方法似乎不返回相关项。您当然可以筛选相关项目,但我看不到使用POST获取这些项目的方法。同样,我不明白为什么Sugar建议为GET请求发送JSON,因为GET请求通常没有正文。@Reisclef使用GET可以指定要在URL中获取的字段列表。它适用于非相关字段,POST.NET也适用。那么根据你的评论,你到底想解决什么问题?我不完全确定现在的问题是什么。它有效(使用过滤柱)!!为什么您决定只使用“机会”而不是文档中建议的方式?我想知道如何查询opportunity的特定字段,但老实说,现在我只找到了ID。我还没有弄清楚如何在使用GET时专门添加opportunity字段。然而,由于您的尝试似乎只需要ID,我认为这将解决手头的问题。当然有办法做到这一点,如果它让我感到厌烦的话,我最终可能会找到解决办法感谢您的投票和答案评分,很高兴它有帮助!我还在SugarCRM社区论坛上发布了这个问题。如果我在那里得到任何答案,将在这里更新。现在这是一个荣誉问题……)又来了!
{
    "next_offset": -1,
    "records": [{
        "id": "64417139-459c-852f-3a73-5846ed1245c2",
        "name": "another account with opp",
        "date_modified": "2016-12-06T16:54:29+00:00",
        "opportunities": {
            "next_offset": -1,
            "records": [{
                "id": "32d1d320-c560-92d6-7def-5846eda786da",
                "date_modified": "2016-12-06T16:55:06+00:00",
                "_acl": {
                    "fields": {}
                },
                "_module": "Opportunities"
            }]
        },
        "_acl": {
            "fields": {}
        },
        "_module": "Accounts"
    }, {
        "id": "48dc47dd-bbf1-816d-b0ac-5846e6dd9e21",
        "name": "test with opp",
        "date_modified": "2016-12-06T16:23:33+00:00",
        "opportunities": {
            "next_offset": -1,
            "records": [{
                "id": "79c3bf6f-6c2b-7945-09f7-5846e6c610d7",
                "date_modified": "2016-12-06T16:24:20+00:00",
                "_acl": {
                    "fields": {}
                },
                "_module": "Opportunities"
            }]
        },
        "_acl": {
            "fields": {}
        },
        "_module": "Accounts"
    }]
}