Version 1 (modified by 11 years ago) ( diff ) | ,
---|
CiviCRM API Development
Just some quick notes for now:
- API files live in the folder
{drupal}\sites\all\modules\civicrm\api\v3
- Custom API files live in the folder
{civicrm custom folder}\api\v3
(CiviCRM custom folder is defined in the Civi menu Admininster >> System Settings >> Directories asCustom PHP Path Directory
). These files are used in preference to the ones in the standard folder above. - The file name for API files should be Entity.php. The function name is civicrm_api3_entity_action.
- The get methods seem to use a few standard mechanisms, some using functions in the file utils.php in the same api/v3 directory.
- One standard mechanism is that
_civicrm_api3_basic_create
function in the utils.php file. This searches for entities, filtering by their field values. - Quite a few use this method mixed, but add functionality to search for entities based on linked entities. E.g, Activities can be found by contact_id, which is a relationship, not a field. The two methods do not play nicely together. For example, try searching for Activities by contact_id and activity_type_id - the activity_type_id filter will be ignored.
Note:
See TracWiki
for help on using the wiki.