Gro CRM SDK memungkinkan Anda untuk dengan mudah terhubung ke API REST GRO CRM dari PHP.
Dengan Gro CRM SDK Anda dapat mengelola kontak, tugas, penawaran, inventaris, dan banyak lagi!
Cara yang disarankan untuk menginstal kerangka kerja ini adalah melalui komposer.
composer require grocrm/grocrm
Untuk informasi tambahan mengenai parameter yang diterima oleh fields , nilai respons yang dikembalikan dari masing -masing metode, dan lebih banyak lagi silakan kunjungi dokumentasi GRO CRM.
<?php
require " vendor/autoload.php " ;
use GroCRM Client
$ client = new Client ( " gro_crm_api_key " ); // Return the contacts api class
$ contacts = $ client -> contacts ();
// Return contact types or a single type with id
$ contactTypes = $ contacts -> types ( $ id = null );
// Create a contact
$ newContact = $ contacts -> create (array $ fields );
// Return a list of contacts
$ allContacts = $ contacts -> getAll ( $ page = 1 , $ per_page = 20 , $ search = null , $ sort = " date " , $ order = " desc " );
// Return the contact with the specified id
$ contact = $ contacts -> get ( $ id );
// Return the contacts associated with the specified contact id
$ associatedContacts = $ contacts -> getAssociatedContacts ( $ id , $ page = 1 , $ per_page = 20 , $ search = null , $ sort = " date " , $ order = " desc " );
// Return the deals associated with the specified contact id
$ associatedDeals = $ contacts -> getAssociatedDeals ( $ id , $ page = 1 , $ per_page = 20 , $ search = null , $ sort = " date " , $ order = " desc " );
// Return the tasks associated with the specified contact id
$ associatedTasks = $ contacts -> getAssociatedTasks ( $ id , $ page = 1 , $ per_page = 20 , $ search = null , $ sort = " date " , $ order = " desc " );
// Update the contact with the specified id
$ updatedContact = $ contacts -> update ( $ id , array $ fields );
// Delete the contact with the specified id
$ contacts -> delete ( $ id ); // Return the deals api class
$ deals = $ client -> deals ();
// Return deal sources or a single source with id
$ dealSources = $ deals -> sources ( $ id = null );
// Return deal stages or a single stage with id
$ dealStages = $ deals -> stages ( $ id = null );
// Return deal scores or a single score with id
$ dealScores = $ deals -> scores ( $ id = null );
// Create a deal
$ newDeal = $ deals -> create (array $ fields );
// Return a list of deals
$ allDeals = $ deals -> getAll ( $ page = 1 , $ per_page = 20 , $ search = null , $ sort = " date " , $ order = " desc " );
// Return the deal with the specified id
$ deal = $ deals -> get ( $ id );
// Update the deal with the specified id
$ updatedDeal = $ deals -> update ( $ id , array $ fields );
// Delete the deal with the specificed id
$ deals -> delete ( $ id ) // Return the tasks api class
$ tasks = $ client -> tasks ();
// Return task statuses or a single status with id
$ taskStatuses = $ tasks -> statuses ( $ id = null );
// Return task priorities or a single priority with id
$ taskPriorities = $ tasks -> priorities ( $ id = null );
// Return task scores or a single scores with id
$ taskScores = $ tasks -> scores ( $ id = null );
// Create a task
$ newTask = $ tasks -> create (array $ fields );
// Return a list of tasks
$ allTasks = $ tasks -> getAll ( $ page = 1 , $ per_page = 20 , $ search = "" , $ sort = " date " , $ order = " desc " )
// Return the task with the specified id
$ task = $ tasks -> get ( $ id )
// Update the task with the specified id
$ updatedTask = $ tasks -> update ( $ id , array $ fields )
// Delete the task with the specified id
$ tasks -> delete ( $ id ) // Return the inventory api class
$ inventory = $ client -> inventory ();
// Return inventory types or a single type with id
$ inventoryTypes = $ inventory -> types ( $ id = null );
// Create a new inventory item
$ newInventoryItem = $ inventory -> create (array $ fields );
// Return a list of inventory items
$ allInventory = $ inventory -> getAll ( $ page = 1 , $ per_page = 20 , $ search = "" , $ sort = " date " , $ order = " desc " );
// Return the inventory item with the specified id
$ inventoryItem = $ inventory -> get ( $ id );
// Update the inventory item with the specified id
$ updatedInventoryItem = $ inventory -> update ( $ id , array $ fields );
// Delete the inventory item with the specified id
$ inventory -> delete ( $ id ); // Return the company api class
$ company = $ client -> company ();
// Return your companies information
$ companyInfo = $ company -> get ();
// Update your companies information
$ updatedCompanyInfo = $ company -> update (array $ fields ); // Return the user api class
$ users = $ client -> users ();
// Return user roles or a single role with id
$ userRoles = $ users -> roles ( $ id = null );
// Return a list of users
$ allUsers = $ users -> getAll ( $ page = 1 , $ per_page = 20 , $ search = "" , $ sort = " date " , $ order = " desc " );
// Return a user with the specified id
$ user = $ users -> get ( $ id );
// Return the currently authenticated user
$ authenticatedUser = $ users -> getAuthenticated (); // Return countries or a single country with id
$ countries = $ client -> getCountries ( $ id = null );
// Return timezones or a single timezone with id
$ timezones = $ client -> getTimeszones ( $ id = null );
// Return currenciesor a single currency with id
$ currencies = $ client -> getCurrencies ( $ id = null );Salah satu metode yang mengembalikan beberapa item dapat menggunakan kelas Pager untuk memberi paginasi melalui beberapa halaman data.
$ contactsPage1 = $ client -> contacts ()-> getAll ();
$ pager = new GroCRM API Pager ( $ client , $ contacts );
if ( $ pager -> hasNext ()) {
$ contactsPage2 = $ pager -> getNext ();
}GRO CRM SDK menggunakan Guzzle untuk semua permintaan jaringan, jika Anda mencoba permintaan dan permintaan gagal, pengecualian Guzzle akan dilemparkan. Untuk informasi lebih lanjut tentang Pengecualian Guzzle, silakan lihat dokumen Guzzle
try {
$ contacts = $ client -> contacts ()-> getAll ();
var_dump ( $ contacts );
} catch ( GuzzleHttp Exception ClientException $ e ) {
$ response = $ e -> getResponse ();
$ statusCode = $ response -> getStatusCode ();
$ body = $ response -> getBody ()-> getContents ();
$ errors = json_decode ( $ body , true );
var_dump ( $ errors );
}Jika Anda memerlukan bantuan, silakan hubungi kami di [email protected] atau ajukan pertanyaan di StackOverflow (Tag 'Grocrm')
Menemukan bug? Harap buka masalah