SugarCRM Access拒绝了40号

时间:2017-04-11 09:45:42

标签: java sugarcrm

我正在尝试从下面的活动机会中获取所有联系人是我对SugarCRM API v4的请求

{
   "session":"btcskfetq7sqshio3uv568d8c1",
   "module_name":"Contacts",
   "query":"contacts.id IN (
       SELECT opportunities_contacts.contact_id 
       FROM opportunities_contacts 
       JOIN opportunities 
       ON opportunities_contacts.opportunity_id = opportunities.id 
       WHERE opportunities.sales_stage 
       NOT IN ('Closed Won','Closed Lost'))",
   "order_by":"",
   "offset":0,
   "select_fields":[
       "first_name",
       "last_name",
       "title",
       "phone_home",
       "phone_work",
       "status",
       "email"
   ],
  "link_name_to_fields_array":null,
  "max_results":0,
  "deleted":0,
  "favorites":false
}

我的查询在sugarCRM数据库的mysql workbench中工作正常,但API响应是:

{"name":"Access Denied","number":40,"description":"You do not have access"}

你能帮忙吗?

1 个答案:

答案 0 :(得分:1)

要实现此目的,请在suagrcrm中编写自己的终点。

<?php
class AtRiskApi extends SugarApi
{
    // This function is only called whenever the rest service cache file is deleted.
    // This shoud return an array of arrays that define how different paths map to different functions
    public function registerApiRest() {
        return array(
            'getAtRisk' => array(
                // What type of HTTP request to match against, we support GET/PUT/POST/DELETE
                'reqType' => 'GET',
                // This is the path you are hoping to match, it also accepts wildcards of ? and <module>
                'path' => array('Accounts', 'at_risk'),
                // These take elements from the path and use them to populate $args
                'pathVars' => array('', ''),
                // This is the method name in this class that the url maps to
                'method' => 'getAtRisk',
                // The shortHelp is vital, without it you will not see your endpoint in the /help
                'shortHelp' => 'Lists at risk accounts in the system',
                // The longHelp points to an HTML file and will be there on /help for people to expand and show
                'longHelp' => '',
            ),
        );
    }

    function getAtRisk($api, $args)
    {
        // Start off with something simple so we can verify the endpoint is registered.
        return 'burgers';
    }
}

更多详情阅读本文:

Read me ...