affixapi 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Gemfile +9 -0
- data/LICENSE +19 -0
- data/README.md +374 -0
- data/Rakefile +10 -0
- data/affixapi.gemspec +38 -0
- data/docs/AddressNoNonNullRequest.md +26 -0
- data/docs/AddressResponse.md +26 -0
- data/docs/Class20230301Api.md +1401 -0
- data/docs/ClientRequest.md +24 -0
- data/docs/ClientResponse.md +26 -0
- data/docs/CompanyResponse.md +28 -0
- data/docs/CoreApi.md +69 -0
- data/docs/CreateEmployeeRequest.md +68 -0
- data/docs/CreateEmployeeRequestBankAccount.md +26 -0
- data/docs/CreateEmployeeRequestManager.md +26 -0
- data/docs/CurrencyRequest.md +15 -0
- data/docs/CurrencyResponse.md +15 -0
- data/docs/DeveloperApi.md +777 -0
- data/docs/DisconnectResponse.md +18 -0
- data/docs/EmployeeResponse.md +74 -0
- data/docs/EmploymentNoNullEnumRequest.md +30 -0
- data/docs/EmploymentResponse.md +30 -0
- data/docs/GroupNoNullEnumRequest.md +24 -0
- data/docs/GroupResponse.md +24 -0
- data/docs/IdAndMessageResponse.md +20 -0
- data/docs/IdentityResponse.md +22 -0
- data/docs/InlineResponse400.md +20 -0
- data/docs/InlineResponse401.md +22 -0
- data/docs/InlineResponse409.md +22 -0
- data/docs/IntrospectResponse.md +24 -0
- data/docs/LocationNoNonNullRequest.md +26 -0
- data/docs/LocationResponse.md +26 -0
- data/docs/ManagementApi.md +420 -0
- data/docs/MessageResponse.md +18 -0
- data/docs/ModeRequest.md +15 -0
- data/docs/ModeResponse.md +15 -0
- data/docs/OfficialApi.md +631 -0
- data/docs/PayrunResponse.md +30 -0
- data/docs/PayslipResponse.md +44 -0
- data/docs/PayslipResponseContributions.md +20 -0
- data/docs/PayslipResponseDeductions.md +20 -0
- data/docs/PayslipResponseEarnings.md +22 -0
- data/docs/PayslipResponseTaxes.md +22 -0
- data/docs/ProviderRequest.md +15 -0
- data/docs/ProviderResponse.md +15 -0
- data/docs/ScopesRequest.md +15 -0
- data/docs/ScopesResponse.md +15 -0
- data/docs/TimeOffBalanceResponse.md +32 -0
- data/docs/TimeOffEntryResponse.md +40 -0
- data/docs/TimesheetResponse.md +32 -0
- data/docs/TokenRequest.md +26 -0
- data/docs/TokenResponse.md +26 -0
- data/git_push.sh +58 -0
- data/lib/openapi_client/api/class20230301_api.rb +1198 -0
- data/lib/openapi_client/api/core_api.rb +79 -0
- data/lib/openapi_client/api/developer_api.rb +677 -0
- data/lib/openapi_client/api/management_api.rb +380 -0
- data/lib/openapi_client/api/official_api.rb +543 -0
- data/lib/openapi_client/api_client.rb +390 -0
- data/lib/openapi_client/api_error.rb +57 -0
- data/lib/openapi_client/configuration.rb +288 -0
- data/lib/openapi_client/models/address_no_non_null_request.rb +295 -0
- data/lib/openapi_client/models/address_response.rb +295 -0
- data/lib/openapi_client/models/client_request.rb +269 -0
- data/lib/openapi_client/models/client_response.rb +284 -0
- data/lib/openapi_client/models/company_response.rb +279 -0
- data/lib/openapi_client/models/create_employee_request.rb +568 -0
- data/lib/openapi_client/models/create_employee_request_bank_account.rb +259 -0
- data/lib/openapi_client/models/create_employee_request_manager.rb +263 -0
- data/lib/openapi_client/models/currency_request.rb +38 -0
- data/lib/openapi_client/models/currency_response.rb +38 -0
- data/lib/openapi_client/models/disconnect_response.rb +258 -0
- data/lib/openapi_client/models/employee_response.rb +608 -0
- data/lib/openapi_client/models/employment_no_null_enum_request.rb +329 -0
- data/lib/openapi_client/models/employment_response.rb +329 -0
- data/lib/openapi_client/models/group_no_null_enum_request.rb +283 -0
- data/lib/openapi_client/models/group_response.rb +283 -0
- data/lib/openapi_client/models/id_and_message_response.rb +239 -0
- data/lib/openapi_client/models/identity_response.rb +250 -0
- data/lib/openapi_client/models/inline_response400.rb +227 -0
- data/lib/openapi_client/models/inline_response401.rb +299 -0
- data/lib/openapi_client/models/inline_response409.rb +278 -0
- data/lib/openapi_client/models/introspect_response.rb +269 -0
- data/lib/openapi_client/models/location_no_non_null_request.rb +263 -0
- data/lib/openapi_client/models/location_response.rb +263 -0
- data/lib/openapi_client/models/message_response.rb +223 -0
- data/lib/openapi_client/models/mode_request.rb +37 -0
- data/lib/openapi_client/models/mode_response.rb +37 -0
- data/lib/openapi_client/models/payrun_response.rb +342 -0
- data/lib/openapi_client/models/payslip_response.rb +448 -0
- data/lib/openapi_client/models/payslip_response_contributions.rb +238 -0
- data/lib/openapi_client/models/payslip_response_deductions.rb +238 -0
- data/lib/openapi_client/models/payslip_response_earnings.rb +250 -0
- data/lib/openapi_client/models/payslip_response_taxes.rb +248 -0
- data/lib/openapi_client/models/provider_request.rb +70 -0
- data/lib/openapi_client/models/provider_response.rb +70 -0
- data/lib/openapi_client/models/scopes_request.rb +55 -0
- data/lib/openapi_client/models/scopes_response.rb +55 -0
- data/lib/openapi_client/models/time_off_balance_response.rb +342 -0
- data/lib/openapi_client/models/time_off_entry_response.rb +408 -0
- data/lib/openapi_client/models/timesheet_response.rb +318 -0
- data/lib/openapi_client/models/token_request.rb +318 -0
- data/lib/openapi_client/models/token_response.rb +318 -0
- data/lib/openapi_client/version.rb +15 -0
- data/lib/openapi_client.rb +86 -0
- data/openapi_client-0.0.1.gem +0 -0
- data/pkg/affixapi-0.0.1.gem +0 -0
- data/spec/api/class20230301_api_spec.rb +260 -0
- data/spec/api/core_api_spec.rb +46 -0
- data/spec/api/developer_api_spec.rb +160 -0
- data/spec/api/management_api_spec.rb +103 -0
- data/spec/api/official_api_spec.rb +135 -0
- data/spec/api_client_spec.rb +226 -0
- data/spec/configuration_spec.rb +42 -0
- data/spec/models/address_no_non_null_request_spec.rb +62 -0
- data/spec/models/address_response_spec.rb +62 -0
- data/spec/models/client_request_spec.rb +52 -0
- data/spec/models/client_response_spec.rb +58 -0
- data/spec/models/company_response_spec.rb +64 -0
- data/spec/models/create_employee_request_bank_account_spec.rb +58 -0
- data/spec/models/create_employee_request_manager_spec.rb +58 -0
- data/spec/models/create_employee_request_spec.rb +204 -0
- data/spec/models/currency_request_spec.rb +28 -0
- data/spec/models/currency_response_spec.rb +28 -0
- data/spec/models/disconnect_response_spec.rb +38 -0
- data/spec/models/employee_response_spec.rb +222 -0
- data/spec/models/employment_no_null_enum_request_spec.rb +78 -0
- data/spec/models/employment_response_spec.rb +78 -0
- data/spec/models/group_no_null_enum_request_spec.rb +56 -0
- data/spec/models/group_response_spec.rb +56 -0
- data/spec/models/id_and_message_response_spec.rb +40 -0
- data/spec/models/identity_response_spec.rb +46 -0
- data/spec/models/inline_response400_spec.rb +40 -0
- data/spec/models/inline_response401_spec.rb +54 -0
- data/spec/models/inline_response409_spec.rb +50 -0
- data/spec/models/introspect_response_spec.rb +52 -0
- data/spec/models/location_no_non_null_request_spec.rb +58 -0
- data/spec/models/location_response_spec.rb +58 -0
- data/spec/models/message_response_spec.rb +34 -0
- data/spec/models/mode_request_spec.rb +28 -0
- data/spec/models/mode_response_spec.rb +28 -0
- data/spec/models/payrun_response_spec.rb +78 -0
- data/spec/models/payslip_response_contributions_spec.rb +40 -0
- data/spec/models/payslip_response_deductions_spec.rb +40 -0
- data/spec/models/payslip_response_earnings_spec.rb +46 -0
- data/spec/models/payslip_response_spec.rb +116 -0
- data/spec/models/payslip_response_taxes_spec.rb +46 -0
- data/spec/models/provider_request_spec.rb +28 -0
- data/spec/models/provider_response_spec.rb +28 -0
- data/spec/models/scopes_request_spec.rb +28 -0
- data/spec/models/scopes_response_spec.rb +28 -0
- data/spec/models/time_off_balance_response_spec.rb +80 -0
- data/spec/models/time_off_entry_response_spec.rb +108 -0
- data/spec/models/timesheet_response_spec.rb +76 -0
- data/spec/models/token_request_spec.rb +62 -0
- data/spec/models/token_response_spec.rb +62 -0
- data/spec/spec_helper.rb +111 -0
- metadata +349 -0
metadata
ADDED
@@ -0,0 +1,349 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: affixapi
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- OpenAPI-Generator
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2024-02-16 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: typhoeus
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.0'
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 1.0.1
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '1.0'
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 1.0.1
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: rspec
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '3.6'
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 3.6.0
|
43
|
+
type: :development
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '3.6'
|
50
|
+
- - ">="
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: 3.6.0
|
53
|
+
description: 'The affixapi.com API documentation. # Introduction Affix API is an
|
54
|
+
OAuth 2.1 application that allows developers to access customer data, without developers
|
55
|
+
needing to manage or maintain integrations; or collect login credentials or API
|
56
|
+
keys from users for these third party systems. # OAuth 2.1 Affix API follows the
|
57
|
+
[OAuth 2.1 spec](https://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-1-08). As
|
58
|
+
an OAuth application, Affix API handles not only both the collection of sensitive
|
59
|
+
user credentials or API keys, but also builds and maintains the integrations with
|
60
|
+
the providers, so you don''t have to. # How to obtain an access token in order
|
61
|
+
to get started, you must: - register a `client_id` - direct your user to the
|
62
|
+
sign in flow (`https://connect.affixapi.com` [with the appropriate query parameters](https://github.com/affixapi/starter-kit/tree/master/connect)) -
|
63
|
+
capture `authorization_code` we will send to your redirect URI after the sign
|
64
|
+
in flow is complete and exchange that `authorization_code` for a Bearer token #
|
65
|
+
Sandbox keys (developer mode) ### dev ``` eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6ImQ1OTZhMmYzLWYzNzktNGE1ZC1hMmRhLTk4OWJmYWViYTg1ZCIsImlhdCI6MTcwMjkyMDkwMywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5kZXYuZW5naW5lZXJpbmcuYWZmaXhhcGkuY29tIiwic3ViIjoiZGV2ZWxvcGVyIiwiYXVkIjoiM0ZEQUVERjktMURDQTRGNTQtODc5NDlGNkEtNDEwMjc2NDMifQ.VLWYjCQvBS0C3ZA6_J3-U-idZj5EYI2IlDdTjAWBxSIHGufp6cqaVodKsF2BeIqcIeB3P0lW-KL9mY3xGd7ckQ
|
66
|
+
``` #### `employees` endpoint sample: ``` curl --fail \ -X GET \ -H ''Authorization:
|
67
|
+
Bearer eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6ImQ1OTZhMmYzLWYzNzktNGE1ZC1hMmRhLTk4OWJmYWViYTg1ZCIsImlhdCI6MTcwMjkyMDkwMywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5kZXYuZW5naW5lZXJpbmcuYWZmaXhhcGkuY29tIiwic3ViIjoiZGV2ZWxvcGVyIiwiYXVkIjoiM0ZEQUVERjktMURDQTRGNTQtODc5NDlGNkEtNDEwMjc2NDMifQ.VLWYjCQvBS0C3ZA6_J3-U-idZj5EYI2IlDdTjAWBxSIHGufp6cqaVodKsF2BeIqcIeB3P0lW-KL9mY3xGd7ckQ''
|
68
|
+
\ ''https://dev.api.affixapi.com/2023-03-01/developer/employees'' ``` ### prod
|
69
|
+
``` eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6IjI5YjFjYTg4LWNlNjktNDgyZC1iNGZjLTkzMWMzZmJkYWM4ZSIsImlhdCI6MTcwMjkyMTA4MywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5wcm9kLmVuZ2luZWVyaW5nLmFmZml4YXBpLmNvbSIsInN1YiI6ImRldmVsb3BlciIsImF1ZCI6IjA4QkIwODFFLUQ5QUI0RDE0LThERjk5MjMzLTY2NjE1Q0U5In0.2zdpFAmiyYiYk6MOcbXNUwwR4M1Fextnaac340x54AidiWXCyw-u9KeavbqfYF6q8a9kcDLrxhJ8Wc_3tIzuVw
|
70
|
+
``` #### `employees` endpoint sample: ``` curl --fail \ -X GET \ -H ''Authorization:
|
71
|
+
Bearer eyJhbGciOiJFUzI1NiIsImtpZCI6Ims5RmxwSFR1YklmZWNsUU5QRVZzeFcxazFZZ0Zfbk1BWllOSGVuOFQxdGciLCJ0eXAiOiJKV1MifQ.eyJwcm92aWRlciI6InNhbmRib3giLCJzY29wZXMiOlsiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2NvbXBhbnkiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWUiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvZW1wbG95ZWVzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL2lkZW50aXR5IiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3BheXJ1bnMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvcGF5cnVucy86cGF5cnVuX2lkIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWJhbGFuY2VzIiwiLzIwMjMtMDMtMDEvZGV2ZWxvcGVyL3RpbWUtb2ZmLWVudHJpZXMiLCIvMjAyMy0wMy0wMS9kZXZlbG9wZXIvdGltZXNoZWV0cyJdLCJ0b2tlbiI6IjI5YjFjYTg4LWNlNjktNDgyZC1iNGZjLTkzMWMzZmJkYWM4ZSIsImlhdCI6MTcwMjkyMTA4MywiaXNzIjoicHVibGljYXBpLWludGVybWVkaWF0ZS5wcm9kLmVuZ2luZWVyaW5nLmFmZml4YXBpLmNvbSIsInN1YiI6ImRldmVsb3BlciIsImF1ZCI6IjA4QkIwODFFLUQ5QUI0RDE0LThERjk5MjMzLTY2NjE1Q0U5In0.2zdpFAmiyYiYk6MOcbXNUwwR4M1Fextnaac340x54AidiWXCyw-u9KeavbqfYF6q8a9kcDLrxhJ8Wc_3tIzuVw''
|
72
|
+
\ ''https://api.affixapi.com/2023-03-01/developer/employees'' ``` # Webhooks
|
73
|
+
An exciting feature for HR/Payroll modes are webhooks. If enabled, your `webhook_uri`
|
74
|
+
is set on your `client_id` for the respective environment: `dev | prod` Webhooks
|
75
|
+
are configured to make live requests to the underlying integration 1x/hr, and if
|
76
|
+
a difference is detected since the last request, we will send a request to your
|
77
|
+
`webhook_uri` with this shape: ``` { added: <api.v20230301.Employees>[ <api.v20230301.Employee>{ ..., date_of_birth:
|
78
|
+
''2010-08-06'', display_full_name: ''Daija Rogahn'', employee_number:
|
79
|
+
''57993'', employment_status: ''pending'', employment_type: ''other'', employments:
|
80
|
+
[ { currency: ''eur'', effective_date: ''2022-02-25'', employment_type:
|
81
|
+
''other'', job_title: ''Dynamic Implementation Manager'', pay_frequency:
|
82
|
+
''semimonthly'', pay_period: ''YEAR'', pay_rate: 96000, }, ], first_name:
|
83
|
+
''Daija'', ... } ], removed: [], updated: [ <api.v20230301.Employee>{ ..., date_of_birth:
|
84
|
+
''2009-11-09'', display_full_name: ''Lourdes Stiedemann'', employee_number:
|
85
|
+
''63189'', employment_status: ''leave'', employment_type: ''full_time'', employments:
|
86
|
+
[ { currency: ''gbp'', effective_date: ''2023-01-16'', employment_type:
|
87
|
+
''full_time'', job_title: ''Forward Brand Planner'', pay_frequency:
|
88
|
+
''semimonthly'', pay_period: ''YEAR'', pay_rate: 86000, }, ], first_name:
|
89
|
+
''Lourdes'', } ] } ``` the following headers will be sent with webhook requests: ```
|
90
|
+
x-affix-api-signature: ab8474e609db95d5df3adc39ea3add7a7544bd215c5c520a30a650ae93a2fba7 x-affix-api-origin: webhooks-employees-webhook user-agent: affixapi.com
|
91
|
+
``` Before trusting the payload, you should sign the payload and verify the signature
|
92
|
+
matches the signature sent by the `affixapi.com` service. This secures that the
|
93
|
+
data sent to your `webhook_uri` is from the `affixapi.com` server. The signature
|
94
|
+
is created by combining the signing secret (your `client_secret`) with the body
|
95
|
+
of the request sent using a standard HMAC-SHA256 keyed hash. The signature can
|
96
|
+
be created via: - create an `HMAC` with your `client_secret` - update the `HMAC`
|
97
|
+
with the payload - get the hex digest -> this is the signature Sample `typescript`
|
98
|
+
code that follows this recipe: ``` import { createHmac } from ''crypto''; export
|
99
|
+
const computeSignature = ({ str, signingSecret, }: { signingSecret: string; str:
|
100
|
+
string; }): string => { const hmac = createHmac(''sha256'', signingSecret); hmac.update(str); const
|
101
|
+
signature = hmac.digest(''hex''); return signature; }; ``` ## Rate limits Open
|
102
|
+
endpoints (not gated by an API key) (applied at endpoint level): - 15 requests
|
103
|
+
every 1 minute (by IP address) - 25 requests every 5 minutes (by IP address) Gated
|
104
|
+
endpoints (require an API key) (applied at endpoint level): - 40 requests every
|
105
|
+
1 minute (by IP address) - 40 requests every 5 minutes (by `client_id`) Things
|
106
|
+
to keep in mind: - Open endpoints (not gated by an API key) will likely be called
|
107
|
+
by your users, not you, so rate limits generally would not apply to you. -
|
108
|
+
As a developer, rate limits are applied at the endpoint granularity. - For example,
|
109
|
+
say the rate limits below are 10 requests per minute by ip. from that same
|
110
|
+
ip, within 1 minute, you get: - 10 requests per minute on `/orders`, -
|
111
|
+
another 10 requests per minute on `/items`, - and another 10 requests per
|
112
|
+
minute on `/identity`, - for a total of 30 requests per minute. '
|
113
|
+
email:
|
114
|
+
- developers@affixapi.com
|
115
|
+
executables: []
|
116
|
+
extensions: []
|
117
|
+
extra_rdoc_files: []
|
118
|
+
files:
|
119
|
+
- Gemfile
|
120
|
+
- LICENSE
|
121
|
+
- README.md
|
122
|
+
- Rakefile
|
123
|
+
- affixapi.gemspec
|
124
|
+
- docs/AddressNoNonNullRequest.md
|
125
|
+
- docs/AddressResponse.md
|
126
|
+
- docs/Class20230301Api.md
|
127
|
+
- docs/ClientRequest.md
|
128
|
+
- docs/ClientResponse.md
|
129
|
+
- docs/CompanyResponse.md
|
130
|
+
- docs/CoreApi.md
|
131
|
+
- docs/CreateEmployeeRequest.md
|
132
|
+
- docs/CreateEmployeeRequestBankAccount.md
|
133
|
+
- docs/CreateEmployeeRequestManager.md
|
134
|
+
- docs/CurrencyRequest.md
|
135
|
+
- docs/CurrencyResponse.md
|
136
|
+
- docs/DeveloperApi.md
|
137
|
+
- docs/DisconnectResponse.md
|
138
|
+
- docs/EmployeeResponse.md
|
139
|
+
- docs/EmploymentNoNullEnumRequest.md
|
140
|
+
- docs/EmploymentResponse.md
|
141
|
+
- docs/GroupNoNullEnumRequest.md
|
142
|
+
- docs/GroupResponse.md
|
143
|
+
- docs/IdAndMessageResponse.md
|
144
|
+
- docs/IdentityResponse.md
|
145
|
+
- docs/InlineResponse400.md
|
146
|
+
- docs/InlineResponse401.md
|
147
|
+
- docs/InlineResponse409.md
|
148
|
+
- docs/IntrospectResponse.md
|
149
|
+
- docs/LocationNoNonNullRequest.md
|
150
|
+
- docs/LocationResponse.md
|
151
|
+
- docs/ManagementApi.md
|
152
|
+
- docs/MessageResponse.md
|
153
|
+
- docs/ModeRequest.md
|
154
|
+
- docs/ModeResponse.md
|
155
|
+
- docs/OfficialApi.md
|
156
|
+
- docs/PayrunResponse.md
|
157
|
+
- docs/PayslipResponse.md
|
158
|
+
- docs/PayslipResponseContributions.md
|
159
|
+
- docs/PayslipResponseDeductions.md
|
160
|
+
- docs/PayslipResponseEarnings.md
|
161
|
+
- docs/PayslipResponseTaxes.md
|
162
|
+
- docs/ProviderRequest.md
|
163
|
+
- docs/ProviderResponse.md
|
164
|
+
- docs/ScopesRequest.md
|
165
|
+
- docs/ScopesResponse.md
|
166
|
+
- docs/TimeOffBalanceResponse.md
|
167
|
+
- docs/TimeOffEntryResponse.md
|
168
|
+
- docs/TimesheetResponse.md
|
169
|
+
- docs/TokenRequest.md
|
170
|
+
- docs/TokenResponse.md
|
171
|
+
- git_push.sh
|
172
|
+
- lib/openapi_client.rb
|
173
|
+
- lib/openapi_client/api/class20230301_api.rb
|
174
|
+
- lib/openapi_client/api/core_api.rb
|
175
|
+
- lib/openapi_client/api/developer_api.rb
|
176
|
+
- lib/openapi_client/api/management_api.rb
|
177
|
+
- lib/openapi_client/api/official_api.rb
|
178
|
+
- lib/openapi_client/api_client.rb
|
179
|
+
- lib/openapi_client/api_error.rb
|
180
|
+
- lib/openapi_client/configuration.rb
|
181
|
+
- lib/openapi_client/models/address_no_non_null_request.rb
|
182
|
+
- lib/openapi_client/models/address_response.rb
|
183
|
+
- lib/openapi_client/models/client_request.rb
|
184
|
+
- lib/openapi_client/models/client_response.rb
|
185
|
+
- lib/openapi_client/models/company_response.rb
|
186
|
+
- lib/openapi_client/models/create_employee_request.rb
|
187
|
+
- lib/openapi_client/models/create_employee_request_bank_account.rb
|
188
|
+
- lib/openapi_client/models/create_employee_request_manager.rb
|
189
|
+
- lib/openapi_client/models/currency_request.rb
|
190
|
+
- lib/openapi_client/models/currency_response.rb
|
191
|
+
- lib/openapi_client/models/disconnect_response.rb
|
192
|
+
- lib/openapi_client/models/employee_response.rb
|
193
|
+
- lib/openapi_client/models/employment_no_null_enum_request.rb
|
194
|
+
- lib/openapi_client/models/employment_response.rb
|
195
|
+
- lib/openapi_client/models/group_no_null_enum_request.rb
|
196
|
+
- lib/openapi_client/models/group_response.rb
|
197
|
+
- lib/openapi_client/models/id_and_message_response.rb
|
198
|
+
- lib/openapi_client/models/identity_response.rb
|
199
|
+
- lib/openapi_client/models/inline_response400.rb
|
200
|
+
- lib/openapi_client/models/inline_response401.rb
|
201
|
+
- lib/openapi_client/models/inline_response409.rb
|
202
|
+
- lib/openapi_client/models/introspect_response.rb
|
203
|
+
- lib/openapi_client/models/location_no_non_null_request.rb
|
204
|
+
- lib/openapi_client/models/location_response.rb
|
205
|
+
- lib/openapi_client/models/message_response.rb
|
206
|
+
- lib/openapi_client/models/mode_request.rb
|
207
|
+
- lib/openapi_client/models/mode_response.rb
|
208
|
+
- lib/openapi_client/models/payrun_response.rb
|
209
|
+
- lib/openapi_client/models/payslip_response.rb
|
210
|
+
- lib/openapi_client/models/payslip_response_contributions.rb
|
211
|
+
- lib/openapi_client/models/payslip_response_deductions.rb
|
212
|
+
- lib/openapi_client/models/payslip_response_earnings.rb
|
213
|
+
- lib/openapi_client/models/payslip_response_taxes.rb
|
214
|
+
- lib/openapi_client/models/provider_request.rb
|
215
|
+
- lib/openapi_client/models/provider_response.rb
|
216
|
+
- lib/openapi_client/models/scopes_request.rb
|
217
|
+
- lib/openapi_client/models/scopes_response.rb
|
218
|
+
- lib/openapi_client/models/time_off_balance_response.rb
|
219
|
+
- lib/openapi_client/models/time_off_entry_response.rb
|
220
|
+
- lib/openapi_client/models/timesheet_response.rb
|
221
|
+
- lib/openapi_client/models/token_request.rb
|
222
|
+
- lib/openapi_client/models/token_response.rb
|
223
|
+
- lib/openapi_client/version.rb
|
224
|
+
- openapi_client-0.0.1.gem
|
225
|
+
- pkg/affixapi-0.0.1.gem
|
226
|
+
- spec/api/class20230301_api_spec.rb
|
227
|
+
- spec/api/core_api_spec.rb
|
228
|
+
- spec/api/developer_api_spec.rb
|
229
|
+
- spec/api/management_api_spec.rb
|
230
|
+
- spec/api/official_api_spec.rb
|
231
|
+
- spec/api_client_spec.rb
|
232
|
+
- spec/configuration_spec.rb
|
233
|
+
- spec/models/address_no_non_null_request_spec.rb
|
234
|
+
- spec/models/address_response_spec.rb
|
235
|
+
- spec/models/client_request_spec.rb
|
236
|
+
- spec/models/client_response_spec.rb
|
237
|
+
- spec/models/company_response_spec.rb
|
238
|
+
- spec/models/create_employee_request_bank_account_spec.rb
|
239
|
+
- spec/models/create_employee_request_manager_spec.rb
|
240
|
+
- spec/models/create_employee_request_spec.rb
|
241
|
+
- spec/models/currency_request_spec.rb
|
242
|
+
- spec/models/currency_response_spec.rb
|
243
|
+
- spec/models/disconnect_response_spec.rb
|
244
|
+
- spec/models/employee_response_spec.rb
|
245
|
+
- spec/models/employment_no_null_enum_request_spec.rb
|
246
|
+
- spec/models/employment_response_spec.rb
|
247
|
+
- spec/models/group_no_null_enum_request_spec.rb
|
248
|
+
- spec/models/group_response_spec.rb
|
249
|
+
- spec/models/id_and_message_response_spec.rb
|
250
|
+
- spec/models/identity_response_spec.rb
|
251
|
+
- spec/models/inline_response400_spec.rb
|
252
|
+
- spec/models/inline_response401_spec.rb
|
253
|
+
- spec/models/inline_response409_spec.rb
|
254
|
+
- spec/models/introspect_response_spec.rb
|
255
|
+
- spec/models/location_no_non_null_request_spec.rb
|
256
|
+
- spec/models/location_response_spec.rb
|
257
|
+
- spec/models/message_response_spec.rb
|
258
|
+
- spec/models/mode_request_spec.rb
|
259
|
+
- spec/models/mode_response_spec.rb
|
260
|
+
- spec/models/payrun_response_spec.rb
|
261
|
+
- spec/models/payslip_response_contributions_spec.rb
|
262
|
+
- spec/models/payslip_response_deductions_spec.rb
|
263
|
+
- spec/models/payslip_response_earnings_spec.rb
|
264
|
+
- spec/models/payslip_response_spec.rb
|
265
|
+
- spec/models/payslip_response_taxes_spec.rb
|
266
|
+
- spec/models/provider_request_spec.rb
|
267
|
+
- spec/models/provider_response_spec.rb
|
268
|
+
- spec/models/scopes_request_spec.rb
|
269
|
+
- spec/models/scopes_response_spec.rb
|
270
|
+
- spec/models/time_off_balance_response_spec.rb
|
271
|
+
- spec/models/time_off_entry_response_spec.rb
|
272
|
+
- spec/models/timesheet_response_spec.rb
|
273
|
+
- spec/models/token_request_spec.rb
|
274
|
+
- spec/models/token_response_spec.rb
|
275
|
+
- spec/spec_helper.rb
|
276
|
+
homepage: https://openapi-generator.tech
|
277
|
+
licenses:
|
278
|
+
- Unlicense
|
279
|
+
metadata: {}
|
280
|
+
post_install_message:
|
281
|
+
rdoc_options: []
|
282
|
+
require_paths:
|
283
|
+
- lib
|
284
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
285
|
+
requirements:
|
286
|
+
- - ">="
|
287
|
+
- !ruby/object:Gem::Version
|
288
|
+
version: '2.4'
|
289
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
290
|
+
requirements:
|
291
|
+
- - ">="
|
292
|
+
- !ruby/object:Gem::Version
|
293
|
+
version: '0'
|
294
|
+
requirements: []
|
295
|
+
rubygems_version: 3.5.4
|
296
|
+
signing_key:
|
297
|
+
specification_version: 4
|
298
|
+
summary: Affix API Ruby Gem
|
299
|
+
test_files:
|
300
|
+
- spec/api/class20230301_api_spec.rb
|
301
|
+
- spec/api/developer_api_spec.rb
|
302
|
+
- spec/api/official_api_spec.rb
|
303
|
+
- spec/api/core_api_spec.rb
|
304
|
+
- spec/api/management_api_spec.rb
|
305
|
+
- spec/api_client_spec.rb
|
306
|
+
- spec/configuration_spec.rb
|
307
|
+
- spec/models/payrun_response_spec.rb
|
308
|
+
- spec/models/provider_response_spec.rb
|
309
|
+
- spec/models/token_response_spec.rb
|
310
|
+
- spec/models/company_response_spec.rb
|
311
|
+
- spec/models/message_response_spec.rb
|
312
|
+
- spec/models/timesheet_response_spec.rb
|
313
|
+
- spec/models/payslip_response_taxes_spec.rb
|
314
|
+
- spec/models/create_employee_request_bank_account_spec.rb
|
315
|
+
- spec/models/group_no_null_enum_request_spec.rb
|
316
|
+
- spec/models/create_employee_request_manager_spec.rb
|
317
|
+
- spec/models/payslip_response_contributions_spec.rb
|
318
|
+
- spec/models/payslip_response_spec.rb
|
319
|
+
- spec/models/client_request_spec.rb
|
320
|
+
- spec/models/introspect_response_spec.rb
|
321
|
+
- spec/models/employment_response_spec.rb
|
322
|
+
- spec/models/currency_response_spec.rb
|
323
|
+
- spec/models/token_request_spec.rb
|
324
|
+
- spec/models/time_off_balance_response_spec.rb
|
325
|
+
- spec/models/provider_request_spec.rb
|
326
|
+
- spec/models/create_employee_request_spec.rb
|
327
|
+
- spec/models/employee_response_spec.rb
|
328
|
+
- spec/models/currency_request_spec.rb
|
329
|
+
- spec/models/address_response_spec.rb
|
330
|
+
- spec/models/disconnect_response_spec.rb
|
331
|
+
- spec/models/mode_request_spec.rb
|
332
|
+
- spec/models/identity_response_spec.rb
|
333
|
+
- spec/models/group_response_spec.rb
|
334
|
+
- spec/models/scopes_request_spec.rb
|
335
|
+
- spec/models/id_and_message_response_spec.rb
|
336
|
+
- spec/models/inline_response401_spec.rb
|
337
|
+
- spec/models/location_no_non_null_request_spec.rb
|
338
|
+
- spec/models/payslip_response_deductions_spec.rb
|
339
|
+
- spec/models/mode_response_spec.rb
|
340
|
+
- spec/models/scopes_response_spec.rb
|
341
|
+
- spec/models/address_no_non_null_request_spec.rb
|
342
|
+
- spec/models/time_off_entry_response_spec.rb
|
343
|
+
- spec/models/location_response_spec.rb
|
344
|
+
- spec/models/inline_response409_spec.rb
|
345
|
+
- spec/models/client_response_spec.rb
|
346
|
+
- spec/models/employment_no_null_enum_request_spec.rb
|
347
|
+
- spec/models/payslip_response_earnings_spec.rb
|
348
|
+
- spec/models/inline_response400_spec.rb
|
349
|
+
- spec/spec_helper.rb
|