Golang implementation of the Striven API ( https://api.striven.com ) This project is in no way officially affiliated with Striven.
Example Code (Note - this is very bad form. Do not put your API IDs and Secret in your code):
package main
import (
"fmt"
"github.com/darimm/striven"
)
func main() {
s := striven.New("MYCLIENTID", "MYCLIENTSECRET")
fmt.println(s.Token.AccessToken)
resp, err := s.Employees.GetAll()
if err != nil {
fmt.Println(err)
}
fmt.Println(resp)
}
Current Status: Incomplete.
APIs Implemented (Checkmark means Completely implemented)
- Access Tokens
New(CustomerID,CustomerSecret)implements https://api.striven.com/v1/apitoken - BillCredits
BillCredits.GetByID(billCreditID int)implements https://api.striven.com/v1/bill-credits/{billCreditID}
BillCredits.Notes.GetByID(params ...int)implements https://api.striven.com/Help/Api/GET-v1-bill-credits-id-notes_PageIndex_PageSize
BillCredits.Attachments.GetByID()implements https://api.striven.com/Help/Api/GET-v1-bill-credits-id-attachments partially. - Classes
Classes.GetAll()implements https://api.striven.com/v1/classes - Contacts
Contacts.GetByID(contactID int)implements https://api.striven.com/Help/Api/GET-v1-contacts-id - CustomerAssets
CustomerAssets.Create(asset CustomerAsset)implements https://api.striven.com/Help/Api/POST-v1-customer-assets for creating
CustomerAssets.Update(asset CustomerAsset)implements https://api.striven.com/Help/Api/POST-v1-customer-assets for updating
CustomerAssets.GetByID(assetID int)implements https://api.striven.com/Help/Api/GET-v1-customer-assets-id
CustomerAssets.Search(param CustomerAssetSearchParam)implements https://api.striven.com/Help/Api/POST-v1-customer-assets-search
CustomerAssets.Types.GetAll()implements https://api.striven.com/Help/Api/GET-v1-customer-assets-types
CustomerAssets.CustomFieldsimplements https://api.striven.com/Help/Api/GET-v1-customer-assets-id-custom-fields
CustomerAssets.Statusimplements https://api.striven.com/Help/Api/POST-v1-customer-assets-id-update-status
CustomerAssets.MaintenanceScheduleimplements https://api.striven.com/Help/Api/POST-v1-customer-assets-id-maintenance-schedule - Customers
Customers.GetByID(customerID int)implements https://api.striven.com/v1/customers/{customerID}Customers.Contacts.GetByCustomerID(customerID int)implements https://api.striven.com/v1/customers/{customerID}/contactsCustomers.ContentGroups.GetByID(customerID int)implements https://api.striven.com/v1/customers/{customerID}/hub/content-groups
Customers.ContentGroups.Document.Upload(localFilePath string, opts ...CustomersHubDocOption)implements https://api.striven.com/Help/Api/POST-v1-customers-id-hub-content-groups-groupId-documents available options arestriven.SetClientID(ClientID int),striven.SetGroupID(GroupID int),striven.SetContentGroupName(GroupName string),striven.IsOverwriteEnabled(), andstriven.IsVisibleOnPortal()this function is suitable for single file uploads, if your application needs concurrent uploads, create variables of the type CustomersHubDoc and call the Upload method as above. - CustomList
CustomLists.GetAll()implements https://api.striven.com/v1/custom-lists
CustomLists.ListItems.Get(ListID int)implements https://api.striven.com/v1/custom-lists/{ListID}/list-items - Employees
Employees.GetAll()implements https://api.striven.com/v1/employees - Formats
InvoiceFormats.GetAll()implements https://api.striven.com/Help/Api/GET-v1-invoice-formats - GLCategories
GLCategories.GetAll()implements https://api.striven.com/Help/Api/GET-v1-glcategories - Industries
Industries.GetAll()implements https://api.striven.com/Help/Api/GET-v1-industries - InventoryLocations
InventoryLocations.GetAll()implements https://api.striven.com/Help/Api/GET-v1-inventory-locations - ItemTypes
ItemTypes.GetAll()implements https://api.striven.com/Help/Api/GET-v1-item-types - PaymentTerms
PaymentTerms.GetAll(excludeDiscounts bool)implements https://api.striven.com/Help/Api/GET-v1-payment-terms_excludeDiscounts - Pools
Pools.GetAll()implements https://api.striven.com/Help/Api/GET-v1-pools - ReferralSources
ReferralSources.GetAll()implements https://api.striven.com/Help/Api/GET-v1-referral-sources - SalesOrderTypes
SalesOrderTypes.GetAll(excludeContractManagedTypes bool)implements https://api.striven.com/Help/Api/GET-v1-sales-order-types_excludeContractManagedTypes - ShippingMethods
ShippingMethods.GetAll()implements https://api.striven.com/Help/Api/GET-v1-shipping-methods
APIs Not Implemented
- Bills
- Categories
- CreditMemos
- GLAcconuts
- Invoices
- Items
- JournalEntries
- Opportunities
- Payments
- Purchase Orders
- SalesOrders
- Tasks
- UserInfo
- Vendors