本文介绍了SugarCRM 访问被拒绝编号 40的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

I am trying to get all contacts from the active opportunities below is my request of 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工作台中运行良好,但API响应是:

my query is working fine in mysql workbench in sugarCRM database but the API response is:

{"name":"Access Denied","number":40,"description":"您没有访问权限"}

你能帮忙吗?

推荐答案

要实现这一点,您需要在 suagrcrm 中编写您自己的端点.

To Achive this you to write Your own end point in 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';
    }
}

欲了解更多详情,请阅读:

For More Details Read this :

阅读我...

这篇关于SugarCRM 访问被拒绝编号 40的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-09 11:29