pike13 0.1.0.beta → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +71 -117
- data/README.md +1222 -315
- data/lib/pike13/api/v2/account/business.rb +0 -4
- data/lib/pike13/api/v2/account.rb +19 -0
- data/lib/pike13/api/v2/desk/booking.rb +10 -0
- data/lib/pike13/api/v2/desk/business.rb +2 -1
- data/lib/pike13/api/v2/desk/event_occurrence.rb +2 -2
- data/lib/pike13/api/v2/desk/person.rb +5 -3
- data/lib/pike13/api/v2/desk/plan.rb +2 -2
- data/lib/pike13/api/v2/desk/plan_product.rb +2 -2
- data/lib/pike13/api/v2/desk/service.rb +2 -2
- data/lib/pike13/api/v2/desk/visit.rb +2 -2
- data/lib/pike13/api/v2/front/branding.rb +2 -1
- data/lib/pike13/api/v2/front/business.rb +2 -1
- data/lib/pike13/api/v2/front/event_occurrence.rb +2 -2
- data/lib/pike13/api/v2/front/plan_product.rb +2 -2
- data/lib/pike13/api/v2/front/service.rb +2 -2
- data/lib/pike13/api/v2/front/visit.rb +2 -2
- data/lib/pike13/api/v3/desk/base.rb +46 -0
- data/lib/pike13/api/v3/desk/clients.rb +180 -0
- data/lib/pike13/api/v3/desk/enrollments.rb +203 -0
- data/lib/pike13/api/v3/desk/event_occurrence_staff_members.rb +170 -0
- data/lib/pike13/api/v3/desk/event_occurrences.rb +154 -0
- data/lib/pike13/api/v3/desk/invoice_item_transactions.rb +189 -0
- data/lib/pike13/api/v3/desk/invoice_items.rb +193 -0
- data/lib/pike13/api/v3/desk/invoices.rb +167 -0
- data/lib/pike13/api/v3/desk/monthly_business_metrics.rb +151 -0
- data/lib/pike13/api/v3/desk/pays.rb +128 -0
- data/lib/pike13/api/v3/desk/person_plans.rb +265 -0
- data/lib/pike13/api/v3/desk/staff_members.rb +127 -0
- data/lib/pike13/api/v3/desk/transactions.rb +169 -0
- data/lib/pike13/http_client.rb +4 -1
- data/lib/pike13/http_client_v3.rb +101 -0
- data/lib/pike13/validators.rb +136 -0
- data/lib/pike13/version.rb +1 -1
- data/lib/pike13.rb +26 -7
- metadata +19 -4
- data/lib/pike13/api/v2/account/me.rb +0 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b5f3e87a08c579d9ce3a38bf31c5b22005bddf994ccce24e7f00141acb05d7c6
|
|
4
|
+
data.tar.gz: 6d4dda290d920e1c0a23fa00eb7eb7eeca1c9a6da0bb2e35430d6dc2860f4fac
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 85846555ad55cb506f48b72448e0299b80e3b74fb65c401087b953f8b5dce051f7a5ae24aac8a5779334871820763a9c0a8e773e8938059404c615bc0365085f
|
|
7
|
+
data.tar.gz: 101ece99ffe6d5fd57f557e77e706b2ed8125e3cfa77eae1aba0dd3233ca8c05edf49c37503514f01ce6dc02aecf2701b6fcf6237e03e97d3bdf8ce7903c391d
|
data/CHANGELOG.md
CHANGED
|
@@ -5,130 +5,84 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
-
## [
|
|
8
|
+
## [0.1.1] - 2025-11-02
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
### Fixed
|
|
11
|
+
- **Account::Business**: Removed undocumented `find(id)` method that was not supported by the Pike13 API v2. The API only supports listing all businesses via `GET /account/businesses` endpoint.
|
|
11
12
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
#### Core Infrastructure
|
|
15
|
-
- HTTP client with Faraday and automatic retry (max 2 retries, exponential backoff)
|
|
16
|
-
- Bearer token authentication
|
|
17
|
-
- Automatic JSON response parsing
|
|
18
|
-
- Global configuration management via `Pike13.configure`
|
|
19
|
-
- URL validation supporting HTTP/HTTPS schemes and custom ports
|
|
20
|
-
- Support for production (`mybiz.pike13.com`) and development (`http://mybiz.pike13.test:3000`) environments
|
|
21
|
-
|
|
22
|
-
#### Error Handling
|
|
23
|
-
- `Pike13::Error` - Base error class
|
|
24
|
-
- `Pike13::ConfigurationError` - Configuration validation errors
|
|
25
|
-
- `Pike13::APIError` - Base for HTTP errors
|
|
26
|
-
- `Pike13::AuthenticationError` (401)
|
|
27
|
-
- `Pike13::NotFoundError` (404)
|
|
28
|
-
- `Pike13::ValidationError` (422)
|
|
29
|
-
- `Pike13::RateLimitError` (429) with rate limit reset header tracking
|
|
30
|
-
- `Pike13::ServerError` (5xx)
|
|
31
|
-
|
|
32
|
-
#### Account Scope Resources
|
|
33
|
-
Base URL: `https://pike13.com/api/v2`
|
|
34
|
-
|
|
35
|
-
- **Account::Me** - Get current account details
|
|
36
|
-
- **Account::Business** - List and find businesses
|
|
37
|
-
- **Account::Person** - List and find people
|
|
38
|
-
- **Account::Password** - Password reset/creation
|
|
39
|
-
- **Account::Confirmation** - Email confirmation
|
|
40
|
-
|
|
41
|
-
#### Desk Scope Resources (Staff Interface)
|
|
42
|
-
Base URL: `https://[base_url]/api/v2`
|
|
43
|
-
|
|
44
|
-
**People Management:**
|
|
45
|
-
- **Desk::Person** - Full CRUD operations
|
|
46
|
-
- List all people, find by ID, search, get authenticated user
|
|
47
|
-
- Create, update, and delete people
|
|
48
|
-
|
|
49
|
-
**Business & Locations:**
|
|
50
|
-
- **Desk::Business** - Get business information
|
|
51
|
-
- **Desk::Location** - List and find locations
|
|
52
|
-
|
|
53
|
-
**Events & Scheduling:**
|
|
54
|
-
- **Desk::Event** - List and find events
|
|
55
|
-
- **Desk::EventOccurrence** - List and find occurrences, summaries, enrollment eligibility
|
|
56
|
-
- **Desk::Appointment** - Find available slots and availability summaries
|
|
57
|
-
|
|
58
|
-
**Bookings & Visits:**
|
|
59
|
-
- **Desk::Booking** - Full CRUD operations for bookings
|
|
60
|
-
- **Desk::Visit** - List and find visits, get visit summaries
|
|
61
|
-
|
|
62
|
-
**Services & Staff:**
|
|
63
|
-
- **Desk::Service** - List and find services, enrollment eligibility
|
|
64
|
-
- **Desk::StaffMember** - List and find staff members, get authenticated staff
|
|
13
|
+
## [0.1.0] - 2025-10-31
|
|
65
14
|
|
|
66
|
-
|
|
67
|
-
- **Desk::Plan** - List and find plans
|
|
68
|
-
- **Desk::PlanProduct** - List and find plan products
|
|
69
|
-
- **Desk::PackProduct** - List and find pack products
|
|
70
|
-
- **Desk::Pack** - Find packs by ID
|
|
71
|
-
- **Desk::Punch** - Find punches by ID
|
|
15
|
+
Initial release with complete Pike13 API support.
|
|
72
16
|
|
|
73
|
-
|
|
74
|
-
- **Desk::Invoice** - List and find invoices
|
|
75
|
-
- **Desk::Payment** - Find payments, void payments, get payment configuration
|
|
76
|
-
- **Desk::Refund** - Find refunds, void refunds
|
|
77
|
-
- **Desk::RevenueCategory** - List and find revenue categories
|
|
78
|
-
- **Desk::SalesTax** - List and find sales taxes
|
|
79
|
-
|
|
80
|
-
**Notes & Communication:**
|
|
81
|
-
- **Desk::Note** - Full CRUD operations for person notes
|
|
82
|
-
- List notes for a person
|
|
83
|
-
- Create, update, and delete notes
|
|
84
|
-
|
|
85
|
-
**Other Resources:**
|
|
86
|
-
- **Desk::MakeUp** - Find make-ups, list reasons, generate make-up credits
|
|
87
|
-
- **Desk::WaitlistEntry** - List and find waitlist entries
|
|
88
|
-
- **Desk::CustomField** - List and find custom fields
|
|
89
|
-
|
|
90
|
-
#### Front Scope Resources (Client Interface)
|
|
91
|
-
Base URL: `https://[base_url]/api/v2`
|
|
92
|
-
|
|
93
|
-
**Business & Branding:**
|
|
94
|
-
- **Front::Business** - Get business information
|
|
95
|
-
- **Front::Branding** - Get branding information
|
|
96
|
-
|
|
97
|
-
**People:**
|
|
98
|
-
- **Front::Person** - Get authenticated client user only
|
|
99
|
-
|
|
100
|
-
**Events & Scheduling:**
|
|
101
|
-
- **Front::Event** - List and find events
|
|
102
|
-
- **Front::EventOccurrence** - List and find occurrences, summaries, enrollment eligibility
|
|
103
|
-
- **Front::Appointment** - Find available slots and availability summaries
|
|
104
|
-
|
|
105
|
-
**Bookings & Visits:**
|
|
106
|
-
- **Front::Booking** - Full CRUD operations, find leases
|
|
107
|
-
- **Front::Visit** - List and find visits
|
|
108
|
-
|
|
109
|
-
**Services & Staff:**
|
|
110
|
-
- **Front::Service** - List and find services, enrollment eligibility
|
|
111
|
-
- **Front::StaffMember** - List and find staff members
|
|
112
|
-
- **Front::Location** - List and find locations
|
|
113
|
-
|
|
114
|
-
**Plans & Products:**
|
|
115
|
-
- **Front::Plan** - List and find plans
|
|
116
|
-
- **Front::PlanProduct** - List and find plan products
|
|
117
|
-
|
|
118
|
-
**Financial:**
|
|
119
|
-
- **Front::Invoice** - Find invoices by ID
|
|
120
|
-
- **Front::Payment** - Find payments, get payment configuration
|
|
17
|
+
### Added
|
|
121
18
|
|
|
122
|
-
|
|
123
|
-
-
|
|
124
|
-
-
|
|
19
|
+
#### Core Infrastructure
|
|
20
|
+
- HTTP client with HTTParty and automatic error handling
|
|
21
|
+
- Bearer token authentication with configurable base URLs
|
|
22
|
+
- Global configuration management with URL normalization
|
|
23
|
+
- Comprehensive error handling with specific HTTP status mappings
|
|
24
|
+
- Support for both production and development environments
|
|
25
|
+
|
|
26
|
+
#### API v2 - Core API
|
|
27
|
+
**Account Resources:**
|
|
28
|
+
- Account management and business listing
|
|
29
|
+
- Person management across businesses
|
|
30
|
+
- Password reset functionality
|
|
31
|
+
- Email confirmation system
|
|
32
|
+
|
|
33
|
+
**Desk Resources (Staff Interface):**
|
|
34
|
+
- Person CRUD operations with search functionality
|
|
35
|
+
- Business and location management
|
|
36
|
+
- Event and event occurrence scheduling
|
|
37
|
+
- Appointment availability and slot management
|
|
38
|
+
- Booking system with lease support
|
|
39
|
+
- Visit tracking and summaries
|
|
40
|
+
- Service management with enrollment eligibility
|
|
41
|
+
- Staff member management
|
|
42
|
+
- Plan, pack, and product management
|
|
43
|
+
- Invoice and payment processing
|
|
44
|
+
- Revenue category and sales tax management
|
|
45
|
+
- Note system for person records
|
|
46
|
+
- Make-up credit management
|
|
47
|
+
- Waitlist entry management
|
|
48
|
+
- Custom field support
|
|
49
|
+
|
|
50
|
+
**Front Resources (Client Interface):**
|
|
51
|
+
- Business and branding information
|
|
52
|
+
- Authenticated user access
|
|
53
|
+
- Event browsing and enrollment eligibility
|
|
54
|
+
- Appointment booking with lease support
|
|
55
|
+
- Payment method management
|
|
56
|
+
- Read-only access to appropriate resources
|
|
57
|
+
|
|
58
|
+
#### API v3 - Reporting API
|
|
59
|
+
Complete reporting analytics with 12 endpoints:
|
|
60
|
+
- Monthly business metrics
|
|
61
|
+
- Client demographics and engagement analysis
|
|
62
|
+
- Transaction records with payment breakdowns
|
|
63
|
+
- Invoice tracking and revenue analysis
|
|
64
|
+
- Enrollment and attendance patterns
|
|
65
|
+
- Event occurrence analytics
|
|
66
|
+
- Staff workload and assignment tracking
|
|
67
|
+
- Invoice item details
|
|
68
|
+
- Transaction-level payment/refund tracking
|
|
69
|
+
- Staff compensation data
|
|
70
|
+
- Client plan ownership metrics
|
|
71
|
+
- Complete staff roster management
|
|
72
|
+
|
|
73
|
+
#### Technical Features
|
|
74
|
+
- Ruby >= 3.0.0 compatibility
|
|
75
|
+
- Faraday HTTP client with retry middleware
|
|
76
|
+
- Comprehensive test coverage (93% line coverage)
|
|
77
|
+
- RuboCop code quality enforcement
|
|
78
|
+
- SimpleCov coverage reporting
|
|
125
79
|
|
|
126
80
|
### Dependencies
|
|
127
|
-
- `
|
|
128
|
-
- `faraday-retry` (~> 2.0) - Automatic retry middleware
|
|
81
|
+
- `httparty` (~> 0.21) - HTTP client library
|
|
129
82
|
- Ruby >= 3.0.0 required
|
|
130
83
|
|
|
131
84
|
### Development
|
|
132
|
-
-
|
|
133
|
-
-
|
|
134
|
-
-
|
|
85
|
+
- Minitest test suite with 300+ test methods
|
|
86
|
+
- SimpleCov for coverage reporting
|
|
87
|
+
- RuboCop for code quality
|
|
88
|
+
- GitHub Actions CI/CD ready
|