plakidan / key-crm
KeyCRM OpenAPI php sdk
0.0.1
2024-12-23 08:58 UTC
Requires
- php: ^7.4 || ^8.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- guzzlehttp/guzzle: ^7.3
- guzzlehttp/psr7: ^1.7 || ^2.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.5
- phpunit/phpunit: ^8.0 || ^9.0
README
Опис REST маршрутів для роботи з KeyCRM OpenAPI
Зверніть увагу:
- Для авторизації потрібно передавати заголовок у форматі Bearer + APIkey
Authorization: [Bearer
ваш-API-ключ
]
- Є обмеження до 60 запитів на хвилину з однієї IP-адреси по API-ключу
- Час у всіх сутностях використовується UTC (GMT+0) - при зчитуванні (GET-запити), при виборі (фільтрації) по часу створення сутності, а також при створенні сутностей (POST).
Встановлення та використання
Вимоги
- PHP 7.4+
- має також працювати на 8.0.
Composer
Установка через Composer, введить таку команду:
composer require plakidan/key-crm
Уставнока вручну
Завантажте файли та підключіть їх у autoload.php
:
<?php require_once('/path/to/plakidan/key-crm/vendor/autoload.php');
З чого почати
<?php require_once(__DIR__ . '/vendor/autoload.php'); $client = new \GuzzleHttp\Client([ 'base_uri' => 'https://openapi.keycrm.app/v1', 'headers' => [ 'Authorization' => 'Bearer '.YOUR_API_KEY_HERE, // Ваш токен ], ]); $apiInstance = new OpenAPI\Client\Api\BuyerApi( // Якщо ви хочете використовувати власний HTTP-клієнт, передайте свій клієнт, який реалізує `GuzzleHttp\ClientInterface`. // Це необов'язково, за замовчуванням буде використано `GuzzleHttp\Client`. $client ); $update_existing_buyer_request = new \OpenAPI\Client\Model\UpdateExistingBuyerRequest(); // \OpenAPI\Client\Model\UpdateExistingBuyerRequest | Приклад об'єкту запиту для створення нового покупця $accept = 'application/json'; // string | application/json try { $result = $apiInstance->createNewBuyer($update_existing_buyer_request, $accept); print_r($result); } catch (Exception $e) { echo 'Exception when calling BuyerApi->createNewBuyer: ', $e->getMessage(), PHP_EOL; }
API Endpoints
Всі посилання відносні до базового https://openapi.keycrm.app/v1
Class | Method | HTTP request | Description |
---|---|---|---|
BuyerApi | createNewBuyer | POST /buyer | Створення нового покупця |
BuyerApi | getBuyerById | GET /buyer/{buyerId} | Отримання сутності покупця за ідентифікатором |
BuyerApi | getPaginatedListOfBuyers | GET /buyer | Отримання списку покупців |
BuyerApi | importBuyers | POST /buyer/import | Імпорт покупців |
BuyerApi | updateExistingBuyer | PUT /buyer/{buyerId} | Оновлення існуючого покупця |
CompanyApi | createNewCompany | POST /companies | Створення новой компанії |
CompanyApi | getCompanyById | GET /companies/{companyId} | Отримання сутності компанії за ідентифікатором |
CompanyApi | getPaginatedListOfCompanies | GET /companies | Отримання списку компаній |
CompanyApi | updateExistingCompany | PUT /companies/{companyId} | Оновлення існуючої компанії |
CustomFieldsApi | getListOfCustomFields | GET /custom-fields | Отримання списку користувацьких полів |
OfferApi | getPaginatedListOfOffers | GET /offers | Отримання варіантів товарів |
OfferApi | getPaginatedListOfStocks | GET /offers/stocks | Отримання списку залишків |
OfferApi | offersStocksUpdate | PUT /offers/stocks | Оновлення залишків товару на складі |
OfferApi | offersUpdate | PUT /offers | Редагування варіантів товару |
OrderApi | attachFileToOrder | POST /order/{orderId}/attachment/{fileId} | Додавання файлу для існуючого замовлення |
OrderApi | attachTagToOrder | POST /order/{orderId}/tag/{tagId} | Додавання тегу для існуючого замовлення |
OrderApi | createNewOrder | POST /order | Створення нового замовлення |
OrderApi | createNewOrderExpense | POST /order/{orderId}/expense | Додавання нової витрати для існуючого замовлення |
OrderApi | createNewOrderImport | POST /order/import | Створення нових замовлень списком |
OrderApi | createNewOrderPayment | POST /order/{orderId}/payment | Додавання нової оплати для існуючого замовлення |
OrderApi | deleteFileFromOrder | DELETE /order/{orderId}/attachment/{fileId} | Видалення файлу із існуючого замовлення |
OrderApi | deleteTagFromOrder | DELETE /order/{orderId}/tag/{tagId} | Видалення тегу з існуючого замовлення |
OrderApi | getOrderById | GET /order/{orderId} | Отримання сутності замовлення за ідентифікатором |
OrderApi | getPaginatedListOfDeliveryServices | GET /order/delivery-service | Отримання списку доступних методів доставки |
OrderApi | getPaginatedListOfExpenseTypes | GET /order/expense-type | Отримання списку типів витрат |
OrderApi | getPaginatedListOfOrders | GET /order | Отримання списку замовлень |
OrderApi | getPaginatedListOfPaymentMethods | GET /order/payment-method | Отримання списку платіжних методів |
OrderApi | getPaginatedListOfProductStatuses | GET /order/product-status | Отримання списку статусів товарів |
OrderApi | getPaginatedListOfSources | GET /order/source | Отримання списку джерел |
OrderApi | getPaginatedListOfStatuses | GET /order/status | Отримання списку статусів |
OrderApi | getPaginatedListOfTags | GET /order/tag | Отримання списку тегів |
OrderApi | updateExistingOrder | PUT /order/{orderId} | Оновлення існуючого замовлення |
OrderApi | updateExistingOrderExpense | PUT /order/{orderId}/expense/{expenseId} | Оновлення витрати для існуючого замовлення |
OrderApi | updateExistingOrderPayment | PUT /order/{orderId}/payment/{paymentId} | Оновлення оплати для існуючого замовлення |
PaymentsApi | attachExternalTransactionToPayment | POST /payments/{paymentId}/external-transactions | Додавання зовнішньої транзакції до оплати |
PaymentsApi | getPaginatedListOfExternalTransactions | GET /payments/external-transactions | Отримання списку зовнішніх транзакцій |
PipelinesApi | attachFileToPipelinesCard | POST /pipelines/cards/{cardId}/attachment/{fileId} | Додавання файлу до картки у воронці |
PipelinesApi | createNewPipelineCard | POST /pipelines/cards | Створення нової картки у воронці |
PipelinesApi | createNewPipelinesCardPayment | POST /pipelines/cards/{cardId}/payment | Додавання нової оплати для існуючої картки у воронці |
PipelinesApi | deleteFileFromCard | DELETE /pipelines/cards/{cardId}/attachment/{fileId} | Видалення файлу з картки воронки |
PipelinesApi | getPaginatedListOfPipelines | GET /pipelines | Отримання списку воронок |
PipelinesApi | getPaginatedListOfPipelinesCards | GET /pipelines/cards | Отримання списку карток воронок |
PipelinesApi | getPaginatedListOfPipelinesStatuses | GET /pipelines/{pipelineId}/statuses | Отримання статусів воронки |
PipelinesApi | getPipelinesCard | GET /pipelines/cards/{cardId} | Отримання картки воронки |
PipelinesApi | updateExistingPipelinesCardPayment | PUT /pipelines/cards/{cardId}/payment/{paymentId} | Оновлення оплати для існуючої картки у воронці |
PipelinesApi | updatePipelinesCard | PUT /pipelines/cards/{cardId} | Оновлення картки воронки |
ProductsApi | createNewCategory | POST /products/categories | Створення нової категорії товарів |
ProductsApi | createNewProduct | POST /products | Створення нового товару |
ProductsApi | createNewProductImport | POST /products/import | Створення нових товарів списком |
ProductsApi | createNewProductOffers | POST /products/{productId}/offers | Створення нових варіантів товару |
ProductsApi | getPaginatedListOfCategories | GET /products/categories | Отримання списку категорій товарів |
ProductsApi | getPaginatedListOfProducts | GET /products | Отримання списку товарів |
ProductsApi | getProductById | GET /products/{productId} | Отримання сутності товару за ідентифікатором |
ProductsApi | updateExistingProduct | PUT /products/{productId} | Оновлення існуючого товару |
StorageApi | getEntityListOfFiles | GET /storage/attachment/{entityType}/{entityId} | Отримання списку файлів по сутності |
StorageApi | getPaginatedListOfFiles | GET /storage | Отримання списку завантажених файлів |
StorageApi | uploadStorageFile | POST /storage/upload | Завантаження файла |
Models
- AttachExternalTransactionToPaymentRequest
- AttachTagToOrder202Response
- Buyer
- BuyerWithIncludes
- BuyerWithIncludesCompany
- BuyerWithIncludesLoyaltyInner
- BuyerWithIncludesManager
- BuyerWithIncludesShippingInner
- Category
- Company
- CompanyWithIncludes
- CompanyWithIncludesManager
- CreateNewCategoryRequest
- CreateNewCompanyRequest
- CreateNewCompanyRequestCustomFieldsInner
- CreateNewOrderExpenseRequest
- CreateNewOrderImportRequest
- CreateNewOrderImportRequestOrdersInner
- CreateNewOrderImportRequestOrdersInnerPaymentsInner
- CreateNewOrderImportRequestOrdersInnerShipping
- CreateNewOrderPaymentRequest
- CreateNewOrderRequest
- CreateNewOrderRequestBuyer
- CreateNewOrderRequestCustomFieldsInner
- CreateNewOrderRequestMarketing
- CreateNewOrderRequestPaymentsInner
- CreateNewOrderRequestProductsInner
- CreateNewOrderRequestProductsInnerPropertiesInner
- CreateNewOrderRequestShipping
- CreateNewPipelineCardRequest
- CreateNewPipelineCardRequestContact
- CreateNewPipelineCardRequestCustomFieldsInner
- CreateNewPipelineCardRequestProductsInner
- CreateNewProductImportRequest
- CreateNewProductOffersRequest
- CreateNewProductOffersRequestOffersInner
- CreateNewProductRequest
- CreateNewProductRequestCustomFieldsInner
- CustomField
- CustomFieldOptionsInner
- DeliveryService
- Expense
- ExpenseType
- ExternalTransaction
- File
- GetPaginatedListOfBuyers200Response
- GetPaginatedListOfCategories200Response
- GetPaginatedListOfCompanies200Response
- GetPaginatedListOfDeliveryServices200Response
- GetPaginatedListOfExpenseTypes200Response
- GetPaginatedListOfExternalTransactions200Response
- GetPaginatedListOfFiles200Response
- GetPaginatedListOfOffers200Response
- GetPaginatedListOfOrders200Response
- GetPaginatedListOfPaymentMethods200Response
- GetPaginatedListOfPipelines200Response
- GetPaginatedListOfPipelines400Response
- GetPaginatedListOfPipelinesCards200Response
- GetPaginatedListOfPipelinesStatuses200Response
- GetPaginatedListOfProducts200Response
- GetPaginatedListOfSources200Response
- GetPaginatedListOfStatuses200Response
- GetPaginatedListOfStocks200Response
- GetPaginatedListOfTags200Response
- ImportBuyers400Response
- ImportBuyersRequest
- ImportBuyersRequestBuyersInner
- Marketing
- Offer
- OfferStocks
- OffersStocksUpdateRequest
- OffersStocksUpdateRequestStocksInner
- OffersUpdateRequest
- OffersUpdateRequestOffersInner
- Order
- OrderWithIncludes
- OrderWithIncludesAssignedInner
- OrderWithIncludesAssignedInnerRole
- OrderWithIncludesBuyer
- OrderWithIncludesCustomFieldsInner
- OrderWithIncludesExpensesInner
- OrderWithIncludesManager
- OrderWithIncludesMarketing
- OrderWithIncludesPaymentsInner
- OrderWithIncludesProductsInner
- OrderWithIncludesProductsInnerOffer
- OrderWithIncludesProductsInnerOfferPropertiesInner
- OrderWithIncludesProductsInnerWarehouse
- OrderWithIncludesShipping
- OrderWithIncludesStatus
- OrderWithIncludesTagsInner
- PaginatedResponse
- Payment
- PaymentMethod
- Pipeline
- PipelineCard
- PipelineCardWithIncludes
- PipelineCardWithIncludesContact
- PipelineCardWithIncludesContactClient
- PipelineCardWithIncludesManager
- PipelineCardWithIncludesPaymentsInner
- PipelineCardWithIncludesProductsInner
- PipelineCardWithIncludesStatus
- PipelineStatuses
- Product
- ProductOffer
- ProductOfferPropertiesAgg
- ProductStatus
- ProductWithIncludes
- Source
- Status
- Tag
- UpdateExistingBuyerRequest
- UpdateExistingBuyerRequestShippingInner
- UpdateExistingOrderExpenseRequest
- UpdateExistingOrderPaymentRequest
- UpdateExistingOrderRequest
- UpdateExistingOrderRequestProductsInner
- UpdateExistingOrderRequestShipping
- UpdateExistingProductRequest
- UpdatePipelinesCardRequest
- UpdatePipelinesCardRequestProductsInner
- Warehouse
Tests
Запуск тестів:
composer install vendor/bin/phpunit
Author
Yaroslav Plakyda
About
Цей пакет згенеровано через OpenAPI генератор на основі документації з https://docs.keycrm.app/