# API reference

WinkPG API version v1. 550 endpoints published by this instance.

## Account

- [Confirm email address](https://docs.winkpg.io/docs/api/POST_api_account_confirm-email.md): `POST /api/account/confirm-email`. No permission required.
- [Confirm phone number](https://docs.winkpg.io/docs/api/POST_api_account_confirm-phone-number.md): `POST /api/account/confirm-phone-number`. No permission required.
- [Get account confirmation state](https://docs.winkpg.io/docs/api/GET_api_account_confirmation-state.md): `GET /api/account/confirmation-state`. No permission required.
- [Get user profile](https://docs.winkpg.io/docs/api/GET_api_account_my-profile.md): `GET /api/account/my-profile`. No permission required.
- [Update user profile](https://docs.winkpg.io/docs/api/PUT_api_account_my-profile.md): `PUT /api/account/my-profile`. No permission required.
- [Change password](https://docs.winkpg.io/docs/api/POST_api_account_my-profile_change-password.md): `POST /api/account/my-profile/change-password`. No permission required.
- [SetTwoFactorEnabled for Profile](https://docs.winkpg.io/docs/api/POST_api_account_my-profile_set-two-factor-enabled.md): `POST /api/account/my-profile/set-two-factor-enabled`. No permission required.
- [GetTimezones for Profile](https://docs.winkpg.io/docs/api/GET_api_account_my-profile_timezones.md): `GET /api/account/my-profile/timezones`. No permission required.
- [GetTwoFactorEnabled for Profile](https://docs.winkpg.io/docs/api/GET_api_account_my-profile_two-factor-enabled.md): `GET /api/account/my-profile/two-factor-enabled`. No permission required.
- [Set profile picture](https://docs.winkpg.io/docs/api/POST_api_account_profile-picture.md): `POST /api/account/profile-picture`. No permission required.
- [GetProfilePictureFile for Account](https://docs.winkpg.io/docs/api/GET_api_account_profile-picture-file_id.md): `GET /api/account/profile-picture-file/{id}`. No permission required.
- [Get profile picture](https://docs.winkpg.io/docs/api/GET_api_account_profile-picture_id.md): `GET /api/account/profile-picture/{id}`. No permission required.
- [Recaptcha for Account](https://docs.winkpg.io/docs/api/GET_api_account_recaptcha-validate.md): `GET /api/account/recaptcha-validate`. No permission required.
- [Register new account](https://docs.winkpg.io/docs/api/POST_api_account_register.md): `POST /api/account/register`. No permission required.
- [Reset password](https://docs.winkpg.io/docs/api/POST_api_account_reset-password.md): `POST /api/account/reset-password`. No permission required.
- [Get security logs](https://docs.winkpg.io/docs/api/GET_api_account_security-logs.md): `GET /api/account/security-logs`. No permission required.
- [Send email confirmation token](https://docs.winkpg.io/docs/api/POST_api_account_send-email-confirmation-token.md): `POST /api/account/send-email-confirmation-token`. No permission required.
- [Send password reset code](https://docs.winkpg.io/docs/api/POST_api_account_send-password-reset-code.md): `POST /api/account/send-password-reset-code`. No permission required.
- [Send phone confirmation token](https://docs.winkpg.io/docs/api/POST_api_account_send-phone-number-confirmation-token.md): `POST /api/account/send-phone-number-confirmation-token`. No permission required.
- [Verify email confirmation token](https://docs.winkpg.io/docs/api/POST_api_account_verify-email-confirmation-token.md): `POST /api/account/verify-email-confirmation-token`. No permission required.
- [Verify password reset token](https://docs.winkpg.io/docs/api/POST_api_account_verify-password-reset-token.md): `POST /api/account/verify-password-reset-token`. No permission required.
- [SendPasswordResetCodeWithUsername for Account](https://docs.winkpg.io/docs/api/POST_api_app_account_send-password-reset-code-with-username.md): `POST /api/app/account/send-password-reset-code-with-username`. No permission required.
- [/api/app/wink-pg-profile](https://docs.winkpg.io/docs/api/GET_api_app_wink-pg-profile.md): `GET /api/app/wink-pg-profile`. No permission required.
- [/api/app/wink-pg-profile](https://docs.winkpg.io/docs/api/PUT_api_app_wink-pg-profile.md): `PUT /api/app/wink-pg-profile`. No permission required.
- [/api/app/wink-pg-profile/can-enable-two-factor](https://docs.winkpg.io/docs/api/POST_api_app_wink-pg-profile_can-enable-two-factor.md): `POST /api/app/wink-pg-profile/can-enable-two-factor`. No permission required.
- [/api/app/wink-pg-profile/change-password](https://docs.winkpg.io/docs/api/POST_api_app_wink-pg-profile_change-password.md): `POST /api/app/wink-pg-profile/change-password`. No permission required.
- [/api/app/wink-pg-profile/set-two-factor-enabled](https://docs.winkpg.io/docs/api/POST_api_app_wink-pg-profile_set-two-factor-enabled.md): `POST /api/app/wink-pg-profile/set-two-factor-enabled`. No permission required.
- [/api/app/wink-pg-profile/timezones](https://docs.winkpg.io/docs/api/GET_api_app_wink-pg-profile_timezones.md): `GET /api/app/wink-pg-profile/timezones`. No permission required.
- [/api/app/wink-pg-profile/two-factor-enabled](https://docs.winkpg.io/docs/api/GET_api_app_wink-pg-profile_two-factor-enabled.md): `GET /api/app/wink-pg-profile/two-factor-enabled`. No permission required.

## AccountingOAuth

- [OAuth redirect target. Validates state, exchanges the code server-side, and redirects to a fixed internal route.](https://docs.winkpg.io/docs/api/GET_api_accounting_oauth_callback.md): `GET /api/accounting/oauth/callback`. No permission required.
- [Begins a connect flow and returns the provider consent URL for the caller to redirect to.](https://docs.winkpg.io/docs/api/POST_api_accounting_oauth_connect.md): `POST /api/accounting/oauth/connect`. No permission required.

## Announcements

- [Get a list of Announcements](https://docs.winkpg.io/docs/api/GET_api_announcements.md): `GET /api/announcements`. Requires: Announcements.Management, merchant scope.
- [Create an Announcement](https://docs.winkpg.io/docs/api/POST_api_announcements.md): `POST /api/announcements`. Requires: Announcements.Management, Announcements.Management.Create, merchant scope.
- [Disables an Announcement.](https://docs.winkpg.io/docs/api/POST_api_announcements_disable-async.md): `POST /api/announcements/disable-async`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Duplicates an Announcement.](https://docs.winkpg.io/docs/api/POST_api_announcements_duplicate-async.md): `POST /api/announcements/duplicate-async`. Requires: Announcements.Management, Announcements.Management.Create, merchant scope.
- [Enables an Announcement.](https://docs.winkpg.io/docs/api/POST_api_announcements_enable-async.md): `POST /api/announcements/enable-async`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Get a list of AnnouncementTemplates](https://docs.winkpg.io/docs/api/GET_api_announcements_templates.md): `GET /api/announcements/templates`. Requires: Announcements.Management, merchant scope.
- [Create an AnnouncementTemplate](https://docs.winkpg.io/docs/api/POST_api_announcements_templates.md): `POST /api/announcements/templates`. Requires: Announcements.Management, Announcements.Management.Create, merchant scope.
- [Gets announcement template picker list.](https://docs.winkpg.io/docs/api/GET_api_announcements_templates_picker-list.md): `GET /api/announcements/templates/picker-list`. Requires: Announcements.Management, merchant scope.
- [Delete an AnnouncementTemplate](https://docs.winkpg.io/docs/api/DELETE_api_announcements_templates_id.md): `DELETE /api/announcements/templates/{id}`. Requires: Announcements.Management, Announcements.Management.Delete, merchant scope.
- [Get an AnnouncementTemplate](https://docs.winkpg.io/docs/api/GET_api_announcements_templates_id.md): `GET /api/announcements/templates/{id}`. Requires: Announcements.Management, merchant scope.
- [Update an AnnouncementTemplate](https://docs.winkpg.io/docs/api/PUT_api_announcements_templates_id.md): `PUT /api/announcements/templates/{id}`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Check AnnouncementTemplate access](https://docs.winkpg.io/docs/api/GET_api_announcements_templates_id_access.md): `GET /api/announcements/templates/{id}/access`. Requires: Announcements.Management, merchant scope.
- [Get an AnnouncementTemplate name by id](https://docs.winkpg.io/docs/api/GET_api_announcements_templates_id_name.md): `GET /api/announcements/templates/{id}/name`. Requires: Announcements.Management, merchant scope.
- [Restore a deleted AnnouncementTemplate](https://docs.winkpg.io/docs/api/POST_api_announcements_templates_id_restore.md): `POST /api/announcements/templates/{id}/restore`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Gets announcements for the current user, ordered by priority and date.](https://docs.winkpg.io/docs/api/GET_api_announcements_user.md): `GET /api/announcements/user`. Requires: Announcements.View, merchant scope.
- [Dismisses all announcements for the current user.](https://docs.winkpg.io/docs/api/POST_api_announcements_user_dismiss-all.md): `POST /api/announcements/user/dismiss-all`. Requires: Announcements.View, merchant scope.
- [Marks multiple announcements as read for the current user.](https://docs.winkpg.io/docs/api/POST_api_announcements_user_mark-many-as-read.md): `POST /api/announcements/user/mark-many-as-read`. Requires: Announcements.View, merchant scope.
- [Gets announcements that need to display a popup to the current user. These are active announcements with PopupOnLogin or Both display options that have not yet been shown as popups.](https://docs.winkpg.io/docs/api/GET_api_announcements_user_pending-popups.md): `GET /api/announcements/user/pending-popups`. Requires: Announcements.View, merchant scope.
- [Gets the count of unread announcements for the current user.](https://docs.winkpg.io/docs/api/GET_api_announcements_user_unread-count.md): `GET /api/announcements/user/unread-count`. Requires: Announcements.View, merchant scope.
- [Dismisses an announcement for the current user. Dismissed announcements won't appear in the notification dropdown.](https://docs.winkpg.io/docs/api/POST_api_announcements_user_announcementId_dismiss.md): `POST /api/announcements/user/{announcementId}/dismiss`. Requires: Announcements.View, merchant scope.
- [Marks an announcement as read for the current user.](https://docs.winkpg.io/docs/api/POST_api_announcements_user_announcementId_mark-as-read.md): `POST /api/announcements/user/{announcementId}/mark-as-read`. Requires: Announcements.View, merchant scope.
- [Records that a popup was shown to the current user for the specified announcement. This prevents the popup from being shown again.](https://docs.winkpg.io/docs/api/POST_api_announcements_user_announcementId_record-popup-shown.md): `POST /api/announcements/user/{announcementId}/record-popup-shown`. Requires: Announcements.View, merchant scope.
- [Delete an Announcement](https://docs.winkpg.io/docs/api/DELETE_api_announcements_id.md): `DELETE /api/announcements/{id}`. Requires: Announcements.Management, Announcements.Management.Delete, merchant scope.
- [Get an Announcement](https://docs.winkpg.io/docs/api/GET_api_announcements_id.md): `GET /api/announcements/{id}`. Requires: Announcements.Management, merchant scope.
- [Update an Announcement](https://docs.winkpg.io/docs/api/PUT_api_announcements_id.md): `PUT /api/announcements/{id}`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Check Announcement access](https://docs.winkpg.io/docs/api/GET_api_announcements_id_access.md): `GET /api/announcements/{id}/access`. Requires: Announcements.Management, merchant scope.
- [Gets announcement engagement stats.](https://docs.winkpg.io/docs/api/GET_api_announcements_id_engagement-stats.md): `GET /api/announcements/{id}/engagement-stats`. Requires: Announcements.Management, merchant scope.
- [Get an Announcement name by id](https://docs.winkpg.io/docs/api/GET_api_announcements_id_name.md): `GET /api/announcements/{id}/name`. Requires: Announcements.Management, merchant scope.
- [Restore a deleted Announcement](https://docs.winkpg.io/docs/api/POST_api_announcements_id_restore.md): `POST /api/announcements/{id}/restore`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.

## API Keys

- [List API keys](https://docs.winkpg.io/docs/api/GET_api_api-keys.md): `GET /api/api-keys`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Create API key](https://docs.winkpg.io/docs/api/POST_api_api-keys.md): `POST /api/api-keys`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Gets the approximate total count of API keys based on the provided input.](https://docs.winkpg.io/docs/api/GET_api_api-keys_approximate-count.md): `GET /api/api-keys/approximate-count`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Gets a continuation list of API keys based on the provided input.](https://docs.winkpg.io/docs/api/GET_api_api-keys_continuation-list.md): `GET /api/api-keys/continuation-list`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [CreateAndReveal for ApiKeys](https://docs.winkpg.io/docs/api/POST_api_api-keys_reveal.md): `POST /api/api-keys/reveal`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Checks if the API key has access to the specified entity.](https://docs.winkpg.io/docs/api/GET_api_api-keys_entityId_has-access.md): `GET /api/api-keys/{entityId}/has-access`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Delete API key](https://docs.winkpg.io/docs/api/DELETE_api_api-keys_id.md): `DELETE /api/api-keys/{id}`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Get API key](https://docs.winkpg.io/docs/api/GET_api_api-keys_id.md): `GET /api/api-keys/{id}`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Update API key](https://docs.winkpg.io/docs/api/PUT_api_api-keys_id.md): `PUT /api/api-keys/{id}`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Get an API key's details](https://docs.winkpg.io/docs/api/GET_api_api-keys_id_detail.md): `GET /api/api-keys/{id}/detail`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Gets the name of the API key by id.](https://docs.winkpg.io/docs/api/GET_api_api-keys_id_name.md): `GET /api/api-keys/{id}/name`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Restores a deleted API key item by id.](https://docs.winkpg.io/docs/api/POST_api_api-keys_id_restore.md): `POST /api/api-keys/{id}/restore`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Revoke an API key](https://docs.winkpg.io/docs/api/POST_api_api-keys_id_revoke.md): `POST /api/api-keys/{id}/revoke`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.

## Apple Pay

- [Serve the domain association file.](https://docs.winkpg.io/docs/api/GET_.well-known_apple-developer-merchantid-domain-association.md): `GET /.well-known/apple-developer-merchantid-domain-association`. No permission required.
- [Clear the domain association file (admin).](https://docs.winkpg.io/docs/api/DELETE_api_payment-tokenization_apple-pay_domain-association-file.md): `DELETE /api/payment-tokenization/apple-pay/domain-association-file`. No permission required.
- [Upload the domain association file (admin).](https://docs.winkpg.io/docs/api/PUT_api_payment-tokenization_apple-pay_domain-association-file.md): `PUT /api/payment-tokenization/apple-pay/domain-association-file`. No permission required.
- [Download the domain association file (admin).](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_apple-pay_domain-association-file_download.md): `GET /api/payment-tokenization/apple-pay/domain-association-file/download`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Receive the encrypted Apple Pay token.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_apple-pay_payment.md): `POST /api/payment-tokenization/apple-pay/payment`. No permission required.
- [Create an Apple Pay merchant session.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_apple-pay_session.md): `POST /api/payment-tokenization/apple-pay/session`. No permission required.
- [Remove the App Store Connect API key.](https://docs.winkpg.io/docs/api/DELETE_api_payment-tokenization_wallet-providers_apple-pay_certificates_api-key.md): `DELETE /api/payment-tokenization/wallet-providers/apple-pay/certificates/api-key`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Upload the App Store Connect API key.](https://docs.winkpg.io/docs/api/PUT_api_payment-tokenization_wallet-providers_apple-pay_certificates_api-key.md): `PUT /api/payment-tokenization/wallet-providers/apple-pay/certificates/api-key`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Check whether the API key is uploaded.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_apple-pay_certificates_api-key_status.md): `GET /api/payment-tokenization/wallet-providers/apple-pay/certificates/api-key/status`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Complete a manual certificate request.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_apple-pay_certificates_type_complete.md): `POST /api/payment-tokenization/wallet-providers/apple-pay/certificates/{type}/complete`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Download the pending CSR.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_apple-pay_certificates_type_csr.md): `GET /api/payment-tokenization/wallet-providers/apple-pay/certificates/{type}/csr`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Generate or regenerate a platform certificate.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_apple-pay_certificates_type_generate.md): `POST /api/payment-tokenization/wallet-providers/apple-pay/certificates/{type}/generate`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Start a manual certificate signing request.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_apple-pay_certificates_type_initiate.md): `POST /api/payment-tokenization/wallet-providers/apple-pay/certificates/{type}/initiate`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Cancel a pending certificate request.](https://docs.winkpg.io/docs/api/DELETE_api_payment-tokenization_wallet-providers_apple-pay_certificates_type_pending.md): `DELETE /api/payment-tokenization/wallet-providers/apple-pay/certificates/{type}/pending`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Get certificate status.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_apple-pay_certificates_type_status.md): `GET /api/payment-tokenization/wallet-providers/apple-pay/certificates/{type}/status`. Requires: PaymentTokenization.SettingManagement, merchant scope.

## Audit Log

- [/api/app/audit-log-continuation/approximate-total-count](https://docs.winkpg.io/docs/api/GET_api_app_audit-log-continuation_approximate-total-count.md): `GET /api/app/audit-log-continuation/approximate-total-count`. Requires: AuditLogging.AuditLogs, merchant scope.
- [/api/app/audit-log-continuation/continuation-list](https://docs.winkpg.io/docs/api/GET_api_app_audit-log-continuation_continuation-list.md): `GET /api/app/audit-log-continuation/continuation-list`. Requires: AuditLogging.AuditLogs, merchant scope.
- [/api/app/audit-log-continuation/summary-counts](https://docs.winkpg.io/docs/api/GET_api_app_audit-log-continuation_summary-counts.md): `GET /api/app/audit-log-continuation/summary-counts`. Requires: AuditLogging.AuditLogs, merchant scope.
- [/api/app/audit-log-continuation/{id}/ensure-entity-access](https://docs.winkpg.io/docs/api/POST_api_app_audit-log-continuation_id_ensure-entity-access.md): `POST /api/app/audit-log-continuation/{id}/ensure-entity-access`. Requires: AuditLogging.AuditLogs, merchant scope.
- [/api/app/audit-log-continuation/{id}/try-ensure-entity-access](https://docs.winkpg.io/docs/api/POST_api_app_audit-log-continuation_id_try-ensure-entity-access.md): `POST /api/app/audit-log-continuation/{id}/try-ensure-entity-access`. Requires: AuditLogging.AuditLogs, merchant scope.

## BatchSequence

- [Read the current batch-number state for a merchant + processor without issuing a value.](https://docs.winkpg.io/docs/api/GET_api_transactions_batch-sequence.md): `GET /api/transactions/batch-sequence`. Requires: Transactions.Settlement.ManageBatchNumber, merchant scope.
- [Override the next batch number for a merchant + processor.](https://docs.winkpg.io/docs/api/POST_api_transactions_batch-sequence.md): `POST /api/transactions/batch-sequence`. Requires: Transactions.Settlement.ManageBatchNumber, merchant scope.

## Contracts

- [List contracts](https://docs.winkpg.io/docs/api/GET_api_contracts.md): `GET /api/contracts`. Requires: Customers.Contracts, merchant scope.
- [Create contract](https://docs.winkpg.io/docs/api/POST_api_contracts.md): `POST /api/contracts`. Requires: Customers.Contracts, Customers.Contracts.Create, merchant scope.
- [Retrieves a continuation-based page of Contracts.](https://docs.winkpg.io/docs/api/POST_api_contracts_list_continuation.md): `POST /api/contracts/list/continuation`. Requires: Customers.Contracts, merchant scope.
- [Counts the Contracts that match a filter.](https://docs.winkpg.io/docs/api/POST_api_contracts_list_continuation_count.md): `POST /api/contracts/list/continuation/count`. Requires: Customers.Contracts, merchant scope.
- [Counts Contracts for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_contracts_list_continuation_summary-counts.md): `POST /api/contracts/list/continuation/summary-counts`. Requires: Customers.Contracts, merchant scope.
- [Delete contract](https://docs.winkpg.io/docs/api/DELETE_api_contracts_id.md): `DELETE /api/contracts/{id}`. Requires: Customers.Contracts, Customers.Contracts.Delete, merchant scope.
- [Get contract by ID](https://docs.winkpg.io/docs/api/GET_api_contracts_id.md): `GET /api/contracts/{id}`. Requires: Customers.Contracts, merchant scope.
- [Update contract](https://docs.winkpg.io/docs/api/PUT_api_contracts_id.md): `PUT /api/contracts/{id}`. Requires: Customers.Contracts, Customers.Contracts.Update, merchant scope.
- [Check contract access](https://docs.winkpg.io/docs/api/GET_api_contracts_id_access.md): `GET /api/contracts/{id}/access`. Requires: Customers.Contracts, merchant scope.
- [Get contract name](https://docs.winkpg.io/docs/api/GET_api_contracts_id_name.md): `GET /api/contracts/{id}/name`. Requires: Customers.Contracts, merchant scope.
- [Restore deleted contract](https://docs.winkpg.io/docs/api/POST_api_contracts_id_restore.md): `POST /api/contracts/{id}/restore`. Requires: Customers.Contracts, Customers.Contracts.Delete, merchant scope.

## Customers

- [List customers](https://docs.winkpg.io/docs/api/GET_api_customers.md): `GET /api/customers`. Requires: Customers.Customers, merchant scope.
- [Create customer](https://docs.winkpg.io/docs/api/POST_api_customers.md): `POST /api/customers`. Requires: Customers.Customers, Customers.Customers.Create, merchant scope.
- [Adds customer stored payment method.](https://docs.winkpg.io/docs/api/POST_api_customers_add-stored-payment-method-async.md): `POST /api/customers/add-stored-payment-method-async`. Requires: Customers.Customers, Customers.Customers.Create, merchant scope.
- [Deletes customer stored payment method.](https://docs.winkpg.io/docs/api/POST_api_customers_delete-stored-payment-method-async.md): `POST /api/customers/delete-stored-payment-method-async`. Requires: Customers.Customers, Customers.Customers.Delete, merchant scope.
- [Retrieves a continuation-based page of Customers.](https://docs.winkpg.io/docs/api/POST_api_customers_list_continuation.md): `POST /api/customers/list/continuation`. Requires: Customers.Customers, merchant scope.
- [Counts the Customers that match a filter.](https://docs.winkpg.io/docs/api/POST_api_customers_list_continuation_count.md): `POST /api/customers/list/continuation/count`. Requires: Customers.Customers, merchant scope.
- [Counts Customers for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_customers_list_continuation_summary-counts.md): `POST /api/customers/list/continuation/summary-counts`. Requires: Customers.Customers, merchant scope.
- [Delete customer](https://docs.winkpg.io/docs/api/DELETE_api_customers_id.md): `DELETE /api/customers/{id}`. Requires: Customers.Customers, Customers.Customers.Delete, merchant scope.
- [Get customer by ID](https://docs.winkpg.io/docs/api/GET_api_customers_id.md): `GET /api/customers/{id}`. Requires: Customers.Customers, merchant scope.
- [Update customer](https://docs.winkpg.io/docs/api/PUT_api_customers_id.md): `PUT /api/customers/{id}`. Requires: Customers.Customers, Customers.Customers.Update, merchant scope.
- [Check customer access](https://docs.winkpg.io/docs/api/GET_api_customers_id_access.md): `GET /api/customers/{id}/access`. Requires: Customers.Customers, merchant scope.
- [Get customer name](https://docs.winkpg.io/docs/api/GET_api_customers_id_name.md): `GET /api/customers/{id}/name`. Requires: Customers.Customers, merchant scope.
- [Restore deleted customer](https://docs.winkpg.io/docs/api/POST_api_customers_id_restore.md): `POST /api/customers/{id}/restore`. Requires: Customers.Customers, merchant scope.

## EmailLog

- [Lists email-log rows for the caller's scope, newest first, with cursor-based paging.](https://docs.winkpg.io/docs/api/GET_api_twilio_email-log.md): `GET /api/twilio/email-log`. Requires: Twilio.EmailLog.View, merchant scope.
- [Gets the full event history for a single outbound message by its correlation id.](https://docs.winkpg.io/docs/api/GET_api_twilio_email-log_by-correlation_correlationId.md): `GET /api/twilio/email-log/by-correlation/{correlationId}`. Requires: Twilio.EmailLog.View, merchant scope.
- [Gets a single email-log row by its id.](https://docs.winkpg.io/docs/api/GET_api_twilio_email-log_id.md): `GET /api/twilio/email-log/{id}`. Requires: Twilio.EmailLog.View, merchant scope.

## Health Checks

- [Returns overall health status. Anonymous callers get summary only. Authenticated callers get component-level detail based on permissions.](https://docs.winkpg.io/docs/api/GET_api_health.md): `GET /api/health`. No permission required.
- [Returns health checks for a specific category. Requires authentication. Detail level depends on ViewDetails permission.](https://docs.winkpg.io/docs/api/GET_api_health_category_category.md): `GET /api/health/category/{category}`. Requires: HealthChecks.HealthChecks, merchant scope.
- [Returns health status for a specific component by name. Requires authentication. Detail level depends on ViewDetails permission.](https://docs.winkpg.io/docs/api/GET_api_health_components_name.md): `GET /api/health/components/{name}`. Requires: HealthChecks.HealthChecks, merchant scope.
- [Returns health checks grouped by category with per-group aggregate status. Requires authentication. Detail level depends on ViewDetails permission.](https://docs.winkpg.io/docs/api/GET_api_health_groups.md): `GET /api/health/groups`. Requires: HealthChecks.HealthChecks, merchant scope.

## Hosted Payment Pages

- [Records a single client interaction beacon.](https://docs.winkpg.io/docs/api/POST_api_hosted-payment-page_interactions.md): `POST /api/hosted-payment-page/interactions`. No permission required.
- [List hosted payment pages](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages.md): `GET /api/hostedpaymentpages`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Create hosted payment page](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages.md): `POST /api/hostedpaymentpages`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Create, merchant scope.
- [Creates hosted payment page save card capture.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_create-save-card-capture-async.md): `POST /api/hostedpaymentpages/create-save-card-capture-async`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Create, merchant scope.
- [Uploads a banner or product image and returns the generated blob filename plus its CDN preview URL.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_images_upload.md): `POST /api/hostedpaymentpages/images/upload`. Requires: HostedPaymentPage.HostedPaymentPages.Update, merchant scope.
- [Retrieves a continuation-based page of HostedPaymentPages.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_list_continuation.md): `POST /api/hostedpaymentpages/list/continuation`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Counts the HostedPaymentPages that match a filter.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_list_continuation_count.md): `POST /api/hostedpaymentpages/list/continuation/count`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Counts HostedPaymentPages for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_list_continuation_summary-counts.md): `POST /api/hostedpaymentpages/list/continuation/summary-counts`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Locks a HostedPaymentPage.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_lock-async.md): `POST /api/hostedpaymentpages/lock-async`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Lock, merchant scope.
- [Lists HPP sessions for a specific hosted payment page.](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_sessions.md): `GET /api/hostedpaymentpages/sessions`. Requires: HostedPaymentPage.HppSessions, merchant scope.
- [Creates a new HPP session with pre-populated field data.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_sessions.md): `POST /api/hostedpaymentpages/sessions`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Retrieves the full prefilled field data for an existing session for cloning.](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_sessions_sessionId_clone-data.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/clone-data`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Returns the Level 3 commercial-card payload stored on a session.](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_sessions_sessionId_level3-data.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/level3-data`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Returns the canonical payment-link URL for a session.](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_sessions_sessionId_payment-link.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/payment-link`. Requires: HostedPaymentPage.HppSessions, merchant scope.
- [Serves a QR code PNG image for the session's payment link.](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_sessions_sessionId_qrcode.png.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/qrcode.png`. Requires: HostedPaymentPage.HppSessions, merchant scope.
- [Revokes an active HPP session so it can no longer be used.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_sessions_sessionId_revoke.md): `POST /api/hostedpaymentpages/sessions/{sessionId}/revoke`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Delete, merchant scope.
- [Sends an HPP session payment link to a recipient via email.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_sessions_sessionId_send-link.md): `POST /api/hostedpaymentpages/sessions/{sessionId}/send-link`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Unlocks a HostedPaymentPage.](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_unlock-async.md): `POST /api/hostedpaymentpages/unlock-async`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Unlock, merchant scope.
- [Delete hosted payment page](https://docs.winkpg.io/docs/api/DELETE_api_hostedpaymentpages_id.md): `DELETE /api/hostedpaymentpages/{id}`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Delete, merchant scope.
- [Get hosted payment page](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_id.md): `GET /api/hostedpaymentpages/{id}`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Update hosted payment page](https://docs.winkpg.io/docs/api/PUT_api_hostedpaymentpages_id.md): `PUT /api/hostedpaymentpages/{id}`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Update, merchant scope.
- [Check page access](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_id_access.md): `GET /api/hostedpaymentpages/{id}/access`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Get page name](https://docs.winkpg.io/docs/api/GET_api_hostedpaymentpages_id_name.md): `GET /api/hostedpaymentpages/{id}/name`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Restore deleted page](https://docs.winkpg.io/docs/api/POST_api_hostedpaymentpages_id_restore.md): `POST /api/hostedpaymentpages/{id}/restore`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Accepts a single CSP violation report.](https://docs.winkpg.io/docs/api/POST_api_hpp_csp-report.md): `POST /api/hpp/csp-report`. No permission required.
- [Publishes the release this host serves: its version, its fingerprint, and the integrity value for every artifact. This is the machine-readable half of "the SRI hash for every published artifact is available to integrators"; the release notes carry the human half.](https://docs.winkpg.io/docs/api/GET_sdk_core_manifest.json.md): `GET /sdk/core/manifest.json`. No permission required.
- [Serves one published artifact. The version and fingerprint segments must match a release this host has verified; anything else is a 404, including a real file name under the wrong fingerprint.](https://docs.winkpg.io/docs/api/GET_sdk_core_version_fingerprint_file.md): `GET /sdk/core/{version}/{fingerprint}/{file}`. No permission required.
- [Serves the sample for the given SDK product, preconfigured for this environment and brand.](https://docs.winkpg.io/docs/api/GET_sdk_sample_product.zip.md): `GET /sdk/sample/{product}.zip`. No permission required.
- [Serves the shim for the given SDK product (today, only `pay` — see PhoeniXGate.HostedPaymentPage.HppSdkProductCatalog). Returns 404 for an unrecognized product rather than reflecting the route segment into the response.](https://docs.winkpg.io/docs/api/GET_sdk_v1_product.js.md): `GET /sdk/v1/{product}.js`. No permission required.

## InboundSmsMessage

- [Lists inbound-SMS rows for the caller's scope, newest first, with continuation-token paging. Use the keyword filter (typically `None`) to review free-text messages that may carry an unstructured opt-out an operator must honor manually.](https://docs.winkpg.io/docs/api/GET_api_twilio_inbound-messages.md): `GET /api/twilio/inbound-messages`. Requires: Twilio.InboundMessages.View, merchant scope.

## Invoicing

- [Credit Notes: Retrieves a paged list of credit notes.](https://docs.winkpg.io/docs/api/GET_api_invoicing_credit-notes.md): `GET /api/invoicing/credit-notes`. Requires: Invoicing.CreditNotes, merchant scope.
- [Credit Notes: Creates a new credit note.](https://docs.winkpg.io/docs/api/POST_api_invoicing_credit-notes.md): `POST /api/invoicing/credit-notes`. Requires: Invoicing.CreditNotes, Invoicing.CreditNotes.Create, merchant scope.
- [Credit Notes: Deletes a credit note by id.](https://docs.winkpg.io/docs/api/DELETE_api_invoicing_credit-notes_id.md): `DELETE /api/invoicing/credit-notes/{id}`. Requires: Invoicing.CreditNotes, Invoicing.CreditNotes.Delete, merchant scope.
- [Credit Notes: Retrieves a single credit note by id.](https://docs.winkpg.io/docs/api/GET_api_invoicing_credit-notes_id.md): `GET /api/invoicing/credit-notes/{id}`. Requires: Invoicing.CreditNotes, merchant scope.
- [Credit Notes: Updates an existing credit note by id.](https://docs.winkpg.io/docs/api/PUT_api_invoicing_credit-notes_id.md): `PUT /api/invoicing/credit-notes/{id}`. Requires: Invoicing.CreditNotes, Invoicing.CreditNotes.Update, merchant scope.
- [Custom Field Definitions: Retrieves a paged list of invoice custom field definitions.](https://docs.winkpg.io/docs/api/GET_api_invoicing_custom-field-definitions.md): `GET /api/invoicing/custom-field-definitions`. Requires: Invoicing.CustomFieldDefinitions, merchant scope.
- [Custom Field Definitions: Creates a new invoice custom field definition.](https://docs.winkpg.io/docs/api/POST_api_invoicing_custom-field-definitions.md): `POST /api/invoicing/custom-field-definitions`. Requires: Invoicing.CustomFieldDefinitions, Invoicing.CustomFieldDefinitions.Create, merchant scope.
- [Custom Field Definitions: Deletes an invoice custom field definition by id.](https://docs.winkpg.io/docs/api/DELETE_api_invoicing_custom-field-definitions_id.md): `DELETE /api/invoicing/custom-field-definitions/{id}`. Requires: Invoicing.CustomFieldDefinitions, Invoicing.CustomFieldDefinitions.Delete, merchant scope.
- [Custom Field Definitions: Retrieves a single invoice custom field definition by id.](https://docs.winkpg.io/docs/api/GET_api_invoicing_custom-field-definitions_id.md): `GET /api/invoicing/custom-field-definitions/{id}`. Requires: Invoicing.CustomFieldDefinitions, merchant scope.
- [Custom Field Definitions: Updates an existing invoice custom field definition by id.](https://docs.winkpg.io/docs/api/PUT_api_invoicing_custom-field-definitions_id.md): `PUT /api/invoicing/custom-field-definitions/{id}`. Requires: Invoicing.CustomFieldDefinitions, Invoicing.CustomFieldDefinitions.Update, merchant scope.
- [Invoices: Exports the filtered invoice list as CSV.](https://docs.winkpg.io/docs/api/GET_api_invoicing_exports_invoices_csv.md): `GET /api/invoicing/exports/invoices/csv`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Exports the filtered invoice list as an Excel workbook.](https://docs.winkpg.io/docs/api/GET_api_invoicing_exports_invoices_excel.md): `GET /api/invoicing/exports/invoices/excel`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Retrieves a continuation-token paged, filtered list of invoices.](https://docs.winkpg.io/docs/api/GET_api_invoicing_invoices.md): `GET /api/invoicing/invoices`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Creates a new draft invoice.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices.md): `POST /api/invoicing/invoices`. Requires: Invoicing.Invoices, Invoicing.Invoices.Create, merchant scope.
- [Invoices: Deletes a draft invoice by id.](https://docs.winkpg.io/docs/api/DELETE_api_invoicing_invoices_id.md): `DELETE /api/invoicing/invoices/{id}`. Requires: Invoicing.Invoices, Invoicing.Invoices.Delete, merchant scope.
- [Invoices: Retrieves a single invoice by id.](https://docs.winkpg.io/docs/api/GET_api_invoicing_invoices_id.md): `GET /api/invoicing/invoices/{id}`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Updates an existing draft invoice by id.](https://docs.winkpg.io/docs/api/PUT_api_invoicing_invoices_id.md): `PUT /api/invoicing/invoices/{id}`. Requires: Invoicing.Invoices, Invoicing.Invoices.Update, merchant scope.
- [Invoices: Cancels a draft invoice.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_cancel.md): `POST /api/invoicing/invoices/{id}/cancel`. Requires: Invoicing.Invoices, Invoicing.Invoices.Cancel, merchant scope.
- [Invoices: Clones an existing invoice as a new draft.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_clone.md): `POST /api/invoicing/invoices/{id}/clone`. Requires: Invoicing.Invoices, Invoicing.Invoices.Create, merchant scope.
- [Invoices: Closes an invoice (write-off).](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_close.md): `POST /api/invoicing/invoices/{id}/close`. Requires: Invoicing.Invoices, Invoicing.Invoices.Close, merchant scope.
- [Invoices: Issues a draft invoice (locks it, assigns a number, computes the due date).](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_issue.md): `POST /api/invoicing/invoices/{id}/issue`. Requires: Invoicing.Invoices, Invoicing.Invoices.Send, merchant scope.
- [Invoices: Marks an issued invoice as sent (status only, no notification).](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_mark-as-sent.md): `POST /api/invoicing/invoices/{id}/mark-as-sent`. Requires: Invoicing.Invoices, Invoicing.Invoices.Send, merchant scope.
- [Invoices: Marks an invoice as viewed by the recipient.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_mark-as-viewed.md): `POST /api/invoicing/invoices/{id}/mark-as-viewed`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Records an offline or manual payment against an invoice.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_record-payment.md): `POST /api/invoicing/invoices/{id}/record-payment`. Requires: Invoicing.Invoices, Invoicing.Invoices.RecordPayment, merchant scope.
- [Invoices: Runs the full send workflow: issue (if still draft), generate the PDF, create the payment/view tokens, send the notification, and mark the invoice as sent.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_id_send.md): `POST /api/invoicing/invoices/{id}/send`. Requires: Invoicing.Invoices, Invoicing.Invoices.Send, merchant scope.
- [Payment Plan: Returns the invoice's payment plan. The body is empty when no plan is set up (an existing invoice with no plan is a valid state, not a missing resource).](https://docs.winkpg.io/docs/api/GET_api_invoicing_invoices_invoiceId_payment-plan.md): `GET /api/invoicing/invoices/{invoiceId}/payment-plan`. Requires: Invoicing.Invoices, merchant scope.
- [Payment Plan: Sets up a payment plan against the issued invoice's outstanding balance and returns the updated invoice.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_invoiceId_payment-plan.md): `POST /api/invoicing/invoices/{invoiceId}/payment-plan`. Requires: Invoicing.Invoices, Invoicing.Invoices.PaymentPlan, merchant scope.
- [Payment Plan: Cancels the active payment plan. The balance is unchanged and remains payable normally.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_invoiceId_payment-plan_cancel.md): `POST /api/invoicing/invoices/{invoiceId}/payment-plan/cancel`. Requires: Invoicing.Invoices, Invoicing.Invoices.PaymentPlan, merchant scope.
- [Payment Plan: Records a manual (offline) payment for a single pending installment: applies its amount to the invoice balance and marks the installment collected. Returns the updated invoice.](https://docs.winkpg.io/docs/api/POST_api_invoicing_invoices_invoiceId_payment-plan_pay-installment.md): `POST /api/invoicing/invoices/{invoiceId}/payment-plan/pay-installment`. Requires: Invoicing.Invoices, Invoicing.Invoices.PaymentPlan, merchant scope.
- [Invoices: Downloads an invoice's PDF document.](https://docs.winkpg.io/docs/api/GET_api_invoicing_invoices_invoiceId_pdf.md): `GET /api/invoicing/invoices/{invoiceId}/pdf`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Retrieves the metadata of an invoice's PDF document.](https://docs.winkpg.io/docs/api/GET_api_invoicing_invoices_invoiceId_pdf_metadata.md): `GET /api/invoicing/invoices/{invoiceId}/pdf/metadata`. Requires: Invoicing.Invoices, merchant scope.
- [Products: Retrieves a paged list of invoice products.](https://docs.winkpg.io/docs/api/GET_api_invoicing_products.md): `GET /api/invoicing/products`. Requires: Invoicing.Products, merchant scope.
- [Products: Creates a new invoice product.](https://docs.winkpg.io/docs/api/POST_api_invoicing_products.md): `POST /api/invoicing/products`. Requires: Invoicing.Products, Invoicing.Products.Create, merchant scope.
- [Products: Deletes an invoice product by id.](https://docs.winkpg.io/docs/api/DELETE_api_invoicing_products_id.md): `DELETE /api/invoicing/products/{id}`. Requires: Invoicing.Products, Invoicing.Products.Delete, merchant scope.
- [Products: Retrieves a single invoice product by id.](https://docs.winkpg.io/docs/api/GET_api_invoicing_products_id.md): `GET /api/invoicing/products/{id}`. Requires: Invoicing.Products, merchant scope.
- [Products: Updates an existing invoice product by id.](https://docs.winkpg.io/docs/api/PUT_api_invoicing_products_id.md): `PUT /api/invoicing/products/{id}`. Requires: Invoicing.Products, Invoicing.Products.Update, merchant scope.
- [Retrieves an invoice for public viewing using a view token. Returns 400 if the token is missing or blank, and 404 if the token is invalid, expired, or the invoice is not found.](https://docs.winkpg.io/docs/api/GET_api_invoicing_public_invoice_invoiceId.md): `GET /api/invoicing/public/invoice/{invoiceId}`. No permission required.
- [Recurring schedules: Retrieves a filtered list of recurring invoice schedules.](https://docs.winkpg.io/docs/api/GET_api_invoicing_recurring-schedules.md): `GET /api/invoicing/recurring-schedules`. Requires: Invoicing.RecurringSchedules, merchant scope.
- [Recurring schedules: Creates a new recurring invoice schedule.](https://docs.winkpg.io/docs/api/POST_api_invoicing_recurring-schedules.md): `POST /api/invoicing/recurring-schedules`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Create, merchant scope.
- [Recurring schedules: Deletes a recurring invoice schedule by id.](https://docs.winkpg.io/docs/api/DELETE_api_invoicing_recurring-schedules_id.md): `DELETE /api/invoicing/recurring-schedules/{id}`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Delete, merchant scope.
- [Recurring schedules: Retrieves a single recurring invoice schedule by id.](https://docs.winkpg.io/docs/api/GET_api_invoicing_recurring-schedules_id.md): `GET /api/invoicing/recurring-schedules/{id}`. Requires: Invoicing.RecurringSchedules, merchant scope.
- [Recurring schedules: Updates an existing recurring invoice schedule by id.](https://docs.winkpg.io/docs/api/PUT_api_invoicing_recurring-schedules_id.md): `PUT /api/invoicing/recurring-schedules/{id}`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Update, merchant scope.
- [Recurring schedules: Cancels a series permanently. Generation stops and the series cannot be resumed.](https://docs.winkpg.io/docs/api/POST_api_invoicing_recurring-schedules_id_cancel.md): `POST /api/invoicing/recurring-schedules/{id}/cancel`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Cancel, merchant scope.
- [Recurring schedules: Generates the currently due invoice for a series immediately (manual trigger). Idempotent: repeating the call for the same due cycle returns the invoice that was already generated rather than creating a duplicate, and the result reports whether this call was the one that created it.](https://docs.winkpg.io/docs/api/POST_api_invoicing_recurring-schedules_id_generate-now.md): `POST /api/invoicing/recurring-schedules/{id}/generate-now`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.GenerateNow, merchant scope.
- [Recurring schedules: Pauses an active series. No further invoices are generated until the series is resumed.](https://docs.winkpg.io/docs/api/POST_api_invoicing_recurring-schedules_id_pause.md): `POST /api/invoicing/recurring-schedules/{id}/pause`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Pause, merchant scope.
- [Recurring schedules: Resumes a paused series, recomputing the next run when the previous one has already elapsed.](https://docs.winkpg.io/docs/api/POST_api_invoicing_recurring-schedules_id_resume.md): `POST /api/invoicing/recurring-schedules/{id}/resume`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Resume, merchant scope.
- [Reports: Retrieves the accounts-receivable aging report.](https://docs.winkpg.io/docs/api/GET_api_invoicing_reports_aging.md): `GET /api/invoicing/reports/aging`. Requires: Invoicing.Reports, merchant scope.
- [Reports: Exports the accounts-receivable aging report as CSV.](https://docs.winkpg.io/docs/api/GET_api_invoicing_reports_aging_export_csv.md): `GET /api/invoicing/reports/aging/export/csv`. Requires: Invoicing.Reports, Invoicing.Reports.Export, merchant scope.
- [Reports: Exports the accounts-receivable aging report as an Excel workbook.](https://docs.winkpg.io/docs/api/GET_api_invoicing_reports_aging_export_excel.md): `GET /api/invoicing/reports/aging/export/excel`. Requires: Invoicing.Reports, Invoicing.Reports.Export, merchant scope.
- [Tax Rates: Retrieves a paged list of invoice tax rates.](https://docs.winkpg.io/docs/api/GET_api_invoicing_tax-rates.md): `GET /api/invoicing/tax-rates`. Requires: Invoicing.TaxRates, merchant scope.
- [Tax Rates: Creates a new invoice tax rate.](https://docs.winkpg.io/docs/api/POST_api_invoicing_tax-rates.md): `POST /api/invoicing/tax-rates`. Requires: Invoicing.TaxRates, Invoicing.TaxRates.Create, merchant scope.
- [Tax Rates: Deletes an invoice tax rate by id.](https://docs.winkpg.io/docs/api/DELETE_api_invoicing_tax-rates_id.md): `DELETE /api/invoicing/tax-rates/{id}`. Requires: Invoicing.TaxRates, Invoicing.TaxRates.Delete, merchant scope.
- [Tax Rates: Retrieves a single invoice tax rate by id.](https://docs.winkpg.io/docs/api/GET_api_invoicing_tax-rates_id.md): `GET /api/invoicing/tax-rates/{id}`. Requires: Invoicing.TaxRates, merchant scope.
- [Tax Rates: Updates an existing invoice tax rate by id.](https://docs.winkpg.io/docs/api/PUT_api_invoicing_tax-rates_id.md): `PUT /api/invoicing/tax-rates/{id}`. Requires: Invoicing.TaxRates, Invoicing.TaxRates.Update, merchant scope.
- [Templates: Retrieves a paged list of invoice templates.](https://docs.winkpg.io/docs/api/GET_api_invoicing_templates.md): `GET /api/invoicing/templates`. Requires: Invoicing.Templates, merchant scope.
- [Templates: Creates a new invoice template.](https://docs.winkpg.io/docs/api/POST_api_invoicing_templates.md): `POST /api/invoicing/templates`. Requires: Invoicing.Templates, Invoicing.Templates.Create, merchant scope.
- [Templates: Deletes an invoice template by id.](https://docs.winkpg.io/docs/api/DELETE_api_invoicing_templates_id.md): `DELETE /api/invoicing/templates/{id}`. Requires: Invoicing.Templates, Invoicing.Templates.Delete, merchant scope.
- [Templates: Retrieves a single invoice template by id.](https://docs.winkpg.io/docs/api/GET_api_invoicing_templates_id.md): `GET /api/invoicing/templates/{id}`. Requires: Invoicing.Templates, merchant scope.
- [Templates: Updates an existing invoice template by id.](https://docs.winkpg.io/docs/api/PUT_api_invoicing_templates_id.md): `PUT /api/invoicing/templates/{id}`. Requires: Invoicing.Templates, Invoicing.Templates.Update, merchant scope.

## Login

- [Check password](https://docs.winkpg.io/docs/api/POST_api_account_checkPassword.md): `POST /api/account/checkPassword`. No permission required.
- [Link external login](https://docs.winkpg.io/docs/api/POST_api_account_linkLogin.md): `POST /api/account/linkLogin`. No permission required.
- [User login](https://docs.winkpg.io/docs/api/POST_api_account_login.md): `POST /api/account/login`. No permission required.
- [User logout](https://docs.winkpg.io/docs/api/GET_api_account_logout.md): `GET /api/account/logout`. No permission required.

## Merchant Billing

- [Billing Runs: Gets a continuation-token paged list of billing runs in the caller's reseller scope.](https://docs.winkpg.io/docs/api/GET_api_billing-runs.md): `GET /api/billing-runs`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Creates and runs a billing run for the caller's reseller scope.](https://docs.winkpg.io/docs/api/POST_api_billing-runs.md): `POST /api/billing-runs`. Requires: MerchantBilling.BillingRuns, MerchantBilling.BillingRuns.Create, merchant scope.
- [Billing Runs: Gets the active all-resellers batch, or the most recent batch.](https://docs.winkpg.io/docs/api/GET_api_billing-runs_batch.md): `GET /api/billing-runs/batch`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Force-clears the current all-resellers fan-out batch.](https://docs.winkpg.io/docs/api/POST_api_billing-runs_batch_clear.md): `POST /api/billing-runs/batch/clear`. Requires: MerchantBilling.BillingRuns, MerchantBilling.BillingRuns.Manage, merchant scope.
- [Billing Runs: Gets one merchant's billing history across every run that included it.](https://docs.winkpg.io/docs/api/GET_api_billing-runs_merchant-history.md): `GET /api/billing-runs/merchant-history`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Gets the plan-scoped historic billing report.](https://docs.winkpg.io/docs/api/GET_api_billing-runs_price-plan-history.md): `GET /api/billing-runs/price-plan-history`. Requires: MerchantBilling.BillingRuns, MerchantBilling.Reports, merchant scope.
- [Billing Runs: Exports the plan-scoped historic billing report as a file.](https://docs.winkpg.io/docs/api/GET_api_billing-runs_price-plan-history_export.md): `GET /api/billing-runs/price-plan-history/export`. Requires: MerchantBilling.BillingRuns, MerchantBilling.Reports, merchant scope.
- [Billing Runs: Triggers the admin all-resellers billing fan-out as a background process.](https://docs.winkpg.io/docs/api/POST_api_billing-runs_trigger-all-resellers.md): `POST /api/billing-runs/trigger-all-resellers`. Requires: MerchantBilling.BillingRuns, MerchantBilling.BillingRuns.Create, merchant scope.
- [Billing Runs: Gets a single billing run by its identifier.](https://docs.winkpg.io/docs/api/GET_api_billing-runs_id.md): `GET /api/billing-runs/{id}`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Cancels a pending or running billing run.](https://docs.winkpg.io/docs/api/POST_api_billing-runs_id_cancel.md): `POST /api/billing-runs/{id}/cancel`. Requires: MerchantBilling.BillingRuns, MerchantBilling.BillingRuns.Create, merchant scope.
- [Billing Runs: Exports a billing run's merchant results and line items as a file.](https://docs.winkpg.io/docs/api/GET_api_billing-runs_id_export.md): `GET /api/billing-runs/{id}/export`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Retries a failed recurring charge on a billing run.](https://docs.winkpg.io/docs/api/POST_api_billing-runs_runId_results_resultId_retry-charge.md): `POST /api/billing-runs/{runId}/results/{resultId}/retry-charge`. Requires: MerchantBilling.BillingRuns, MerchantBilling.BillingRuns.Retry, merchant scope.
- [Payment Methods: Gets the active stored payment method for the merchant, or null when none is configured.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_billing_payment-method.md): `GET /api/merchants/{merchantId}/billing/payment-method`. Requires: MerchantBilling.PaymentMethods, merchant scope.
- [Payment Methods: Cancels (revokes) the outstanding capture link for the merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_merchantId_billing_payment-method_capture-link_cancel.md): `POST /api/merchants/{merchantId}/billing/payment-method/capture-link/cancel`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Resends the outstanding capture link for the merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_merchantId_billing_payment-method_capture-link_resend.md): `POST /api/merchants/{merchantId}/billing/payment-method/capture-link/resend`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Emails the merchant a secure link to capture a payment method for recurring billing.](https://docs.winkpg.io/docs/api/POST_api_merchants_merchantId_billing_payment-method_capture-link_send.md): `POST /api/merchants/{merchantId}/billing/payment-method/capture-link/send`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Gets the status of the outstanding capture link for the merchant.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_billing_payment-method_capture-link_status.md): `GET /api/merchants/{merchantId}/billing/payment-method/capture-link/status`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Gets whether the reseller-level prerequisites for capturing a stored method are configured.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_billing_payment-method_capture-readiness.md): `GET /api/merchants/{merchantId}/billing/payment-method/capture-readiness`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Soft-deactivates the active stored payment method for the merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_merchantId_billing_payment-method_deactivate.md): `POST /api/merchants/{merchantId}/billing/payment-method/deactivate`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Gets the continuation-token-paged history of stored methods for the merchant.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_billing_payment-method_history.md): `GET /api/merchants/{merchantId}/billing/payment-method/history`. Requires: MerchantBilling.PaymentMethods, merchant scope.
- [Payment Methods: Re-activates a stored-but-inactive payment method for the merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_merchantId_billing_payment-method_paymentMethodId_activate.md): `POST /api/merchants/{merchantId}/billing/payment-method/{paymentMethodId}/activate`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.

## Merchants

- [List merchants](https://docs.winkpg.io/docs/api/GET_api_merchants.md): `GET /api/merchants`. No permission required.
- [Create merchant](https://docs.winkpg.io/docs/api/POST_api_merchants.md): `POST /api/merchants`. Requires: Merchants.Merchants.Create, merchant scope.
- [Gets assignable merchants.](https://docs.winkpg.io/docs/api/GET_api_merchants_assignable-for-price-plan.md): `GET /api/merchants/assignable-for-price-plan`. Requires: Merchants.Merchants, merchant scope.
- [Gets merchants by price plan.](https://docs.winkpg.io/docs/api/GET_api_merchants_by-price-plan.md): `GET /api/merchants/by-price-plan`. Requires: Merchants.Merchants, merchant scope.
- [Gets default merchant user.](https://docs.winkpg.io/docs/api/POST_api_merchants_get-default-merchant-user-async.md): `POST /api/merchants/get-default-merchant-user-async`. No permission required.
- [Gets merchant users.](https://docs.winkpg.io/docs/api/POST_api_merchants_get-merchant-users-async.md): `POST /api/merchants/get-merchant-users-async`. No permission required.
- [Retrieves a continuation-based page of Merchants.](https://docs.winkpg.io/docs/api/POST_api_merchants_list_continuation.md): `POST /api/merchants/list/continuation`. No permission required.
- [Counts the Merchants that match a filter.](https://docs.winkpg.io/docs/api/POST_api_merchants_list_continuation_count.md): `POST /api/merchants/list/continuation/count`. No permission required.
- [Counts Merchants for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_merchants_list_continuation_summary-counts.md): `POST /api/merchants/list/continuation/summary-counts`. No permission required.
- [Gets reseller scope merchants.](https://docs.winkpg.io/docs/api/GET_api_merchants_reseller-scope.md): `GET /api/merchants/reseller-scope`. Requires: Merchants.Merchants, merchant scope.
- [Gets merchant custom fields.](https://docs.winkpg.io/docs/api/GET_api_merchants_self_custom-fields.md): `GET /api/merchants/self/custom-fields`. No permission required.
- [Updates merchant custom fields.](https://docs.winkpg.io/docs/api/PUT_api_merchants_self_custom-fields.md): `PUT /api/merchants/self/custom-fields`. No permission required.
- [Gets merchant order data defaults.](https://docs.winkpg.io/docs/api/GET_api_merchants_self_order-data-defaults.md): `GET /api/merchants/self/order-data-defaults`. No permission required.
- [Updates merchant order data defaults.](https://docs.winkpg.io/docs/api/PUT_api_merchants_self_order-data-defaults.md): `PUT /api/merchants/self/order-data-defaults`. No permission required.
- [Validates merchant processor profile deactivation.](https://docs.winkpg.io/docs/api/POST_api_merchants_validate-processor-profile-deactivation-async.md): `POST /api/merchants/validate-processor-profile-deactivation-async`. No permission required.
- [Delete merchant](https://docs.winkpg.io/docs/api/DELETE_api_merchants_id.md): `DELETE /api/merchants/{id}`. Requires: Merchants.Merchants.Delete, merchant scope.
- [Get merchant by ID](https://docs.winkpg.io/docs/api/GET_api_merchants_id.md): `GET /api/merchants/{id}`. No permission required.
- [Update merchant](https://docs.winkpg.io/docs/api/PUT_api_merchants_id.md): `PUT /api/merchants/{id}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Check merchant access](https://docs.winkpg.io/docs/api/GET_api_merchants_id_access.md): `GET /api/merchants/{id}/access`. No permission required.
- [Assigns merchant price plan.](https://docs.winkpg.io/docs/api/POST_api_merchants_id_assign-price-plan_pricePlanId.md): `POST /api/merchants/{id}/assign-price-plan/{pricePlanId}`. Requires: MerchantBilling.PricePlans.Assign, merchant scope.
- [Locks a Merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_id_lock.md): `POST /api/merchants/{id}/lock`. Requires: Merchants.Merchants.Lock, merchant scope.
- [Get merchant name](https://docs.winkpg.io/docs/api/GET_api_merchants_id_name.md): `GET /api/merchants/{id}/name`. No permission required.
- [Get merchant registers](https://docs.winkpg.io/docs/api/GET_api_merchants_id_registers.md): `GET /api/merchants/{id}/registers`. No permission required.
- [Restore deleted merchant](https://docs.winkpg.io/docs/api/POST_api_merchants_id_restore.md): `POST /api/merchants/{id}/restore`. No permission required.
- [Unassigns merchant price plan.](https://docs.winkpg.io/docs/api/POST_api_merchants_id_unassign-price-plan.md): `POST /api/merchants/{id}/unassign-price-plan`. Requires: MerchantBilling.PricePlans.Assign, merchant scope.
- [Unlocks a Merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_id_unlock.md): `POST /api/merchants/{id}/unlock`. Requires: Merchants.Merchants.Unlock, merchant scope.
- [Lists the merchant's processor profiles.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_processor-profiles.md): `GET /api/merchants/{merchantId}/processor-profiles`. No permission required.
- [Adds a new processor profile to the merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_merchantId_processor-profiles.md): `POST /api/merchants/{merchantId}/processor-profiles`. Requires: Merchants.Merchants.Create, merchant scope.
- [Removes a processor profile from the merchant.](https://docs.winkpg.io/docs/api/DELETE_api_merchants_merchantId_processor-profiles_profileId.md): `DELETE /api/merchants/{merchantId}/processor-profiles/{profileId}`. Requires: Merchants.Merchants.Delete, merchant scope.
- [Gets a single processor profile by id.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_processor-profiles_profileId.md): `GET /api/merchants/{merchantId}/processor-profiles/{profileId}`. No permission required.
- [Replaces an existing processor profile (full-replace of that single profile).](https://docs.winkpg.io/docs/api/PUT_api_merchants_merchantId_processor-profiles_profileId.md): `PUT /api/merchants/{merchantId}/processor-profiles/{profileId}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Gets a read-only, non-secret summary of a single processor profile.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_processor-profiles_profileId_summary.md): `GET /api/merchants/{merchantId}/processor-profiles/{profileId}/summary`. No permission required.

## MerchantScreeningProviderProfile

- [Lists the merchant's screening provider profiles.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_screening-provider-profiles.md): `GET /api/merchants/{merchantId}/screening-provider-profiles`. No permission required.
- [Adds a screening provider profile to the merchant.](https://docs.winkpg.io/docs/api/POST_api_merchants_merchantId_screening-provider-profiles.md): `POST /api/merchants/{merchantId}/screening-provider-profiles`. Requires: Merchants.Merchants.Create, merchant scope.
- [Removes a screening provider profile from the merchant.](https://docs.winkpg.io/docs/api/DELETE_api_merchants_merchantId_screening-provider-profiles_profileId.md): `DELETE /api/merchants/{merchantId}/screening-provider-profiles/{profileId}`. Requires: Merchants.Merchants.Delete, merchant scope.
- [Gets a single screening provider profile by id.](https://docs.winkpg.io/docs/api/GET_api_merchants_merchantId_screening-provider-profiles_profileId.md): `GET /api/merchants/{merchantId}/screening-provider-profiles/{profileId}`. No permission required.
- [Replaces an existing screening provider profile (full replace of that single profile).](https://docs.winkpg.io/docs/api/PUT_api_merchants_merchantId_screening-provider-profiles_profileId.md): `PUT /api/merchants/{merchantId}/screening-provider-profiles/{profileId}`. Requires: Merchants.Merchants.Update, merchant scope.

## MerchantUserApiKeys

- [Create and reveal an API key for a merchant user.](https://docs.winkpg.io/docs/api/POST_api_api-keys_for-user.md): `POST /api/api-keys/for-user`. Requires: ApiKeyAuthorization.ApiKeys.CreateForUser, merchant scope.

## MySession

- [/api/app/my-session/approximate-total-count](https://docs.winkpg.io/docs/api/GET_api_app_my-session_approximate-total-count.md): `GET /api/app/my-session/approximate-total-count`. No permission required.
- [/api/app/my-session/continuation-list](https://docs.winkpg.io/docs/api/GET_api_app_my-session_continuation-list.md): `GET /api/app/my-session/continuation-list`. No permission required.
- [/api/app/my-session/summary-counts](https://docs.winkpg.io/docs/api/GET_api_app_my-session_summary-counts.md): `GET /api/app/my-session/summary-counts`. No permission required.
- [/api/app/my-session/{id}/ensure-entity-access](https://docs.winkpg.io/docs/api/POST_api_app_my-session_id_ensure-entity-access.md): `POST /api/app/my-session/{id}/ensure-entity-access`. No permission required.
- [/api/app/my-session/{id}/revoke](https://docs.winkpg.io/docs/api/POST_api_app_my-session_id_revoke.md): `POST /api/app/my-session/{id}/revoke`. No permission required.
- [/api/app/my-session/{id}/try-ensure-entity-access](https://docs.winkpg.io/docs/api/POST_api_app_my-session_id_try-ensure-entity-access.md): `POST /api/app/my-session/{id}/try-ensure-entity-access`. No permission required.

## Notifications

- [Get a list of NotificationChannels](https://docs.winkpg.io/docs/api/GET_api_notifications_channels.md): `GET /api/notifications/channels`. Requires: Notifications.Channels, merchant scope.
- [Create a NotificationChannel](https://docs.winkpg.io/docs/api/POST_api_notifications_channels.md): `POST /api/notifications/channels`. Requires: Notifications.Channels, Notifications.Channels.Create, merchant scope.
- [Retrieves a continuation-based page of NotificationChannels.](https://docs.winkpg.io/docs/api/POST_api_notifications_channels_list_continuation.md): `POST /api/notifications/channels/list/continuation`. Requires: Notifications.Channels, merchant scope.
- [Counts the NotificationChannels that match a filter.](https://docs.winkpg.io/docs/api/POST_api_notifications_channels_list_continuation_count.md): `POST /api/notifications/channels/list/continuation/count`. Requires: Notifications.Channels, merchant scope.
- [Counts NotificationChannels for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_notifications_channels_list_continuation_summary-counts.md): `POST /api/notifications/channels/list/continuation/summary-counts`. Requires: Notifications.Channels, merchant scope.
- [Delete a NotificationChannel](https://docs.winkpg.io/docs/api/DELETE_api_notifications_channels_id.md): `DELETE /api/notifications/channels/{id}`. Requires: Notifications.Channels, Notifications.Channels.Delete, merchant scope.
- [Get a NotificationChannel](https://docs.winkpg.io/docs/api/GET_api_notifications_channels_id.md): `GET /api/notifications/channels/{id}`. Requires: Notifications.Channels, merchant scope.
- [Update a NotificationChannel](https://docs.winkpg.io/docs/api/PUT_api_notifications_channels_id.md): `PUT /api/notifications/channels/{id}`. Requires: Notifications.Channels, Notifications.Channels.Update, merchant scope.
- [Check NotificationChannel access](https://docs.winkpg.io/docs/api/GET_api_notifications_channels_id_access.md): `GET /api/notifications/channels/{id}/access`. Requires: Notifications.Channels, merchant scope.
- [Disables a channel.](https://docs.winkpg.io/docs/api/POST_api_notifications_channels_id_disable.md): `POST /api/notifications/channels/{id}/disable`. Requires: Notifications.Channels, Notifications.Channels.Update, merchant scope.
- [Duplicates a channel.](https://docs.winkpg.io/docs/api/POST_api_notifications_channels_id_duplicate.md): `POST /api/notifications/channels/{id}/duplicate`. Requires: Notifications.Channels, Notifications.Channels.Create, merchant scope.
- [Enables a channel.](https://docs.winkpg.io/docs/api/POST_api_notifications_channels_id_enable.md): `POST /api/notifications/channels/{id}/enable`. Requires: Notifications.Channels, Notifications.Channels.Update, merchant scope.
- [Get a NotificationChannel name by id](https://docs.winkpg.io/docs/api/GET_api_notifications_channels_id_name.md): `GET /api/notifications/channels/{id}/name`. Requires: Notifications.Channels, merchant scope.
- [Restore a deleted NotificationChannel](https://docs.winkpg.io/docs/api/POST_api_notifications_channels_id_restore.md): `POST /api/notifications/channels/{id}/restore`. Requires: Notifications.Channels, merchant scope.
- [Get a list of NotificationDestinations](https://docs.winkpg.io/docs/api/GET_api_notifications_destinations.md): `GET /api/notifications/destinations`. Requires: Notifications.Destinations, merchant scope.
- [Create a NotificationDestination](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations.md): `POST /api/notifications/destinations`. Requires: Notifications.Destinations, Notifications.Destinations.Create, merchant scope.
- [Retrieves a continuation-based page of NotificationDestinations.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_list_continuation.md): `POST /api/notifications/destinations/list/continuation`. Requires: Notifications.Destinations, merchant scope.
- [Counts the NotificationDestinations that match a filter.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_list_continuation_count.md): `POST /api/notifications/destinations/list/continuation/count`. Requires: Notifications.Destinations, merchant scope.
- [Counts NotificationDestinations for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_list_continuation_summary-counts.md): `POST /api/notifications/destinations/list/continuation/summary-counts`. Requires: Notifications.Destinations, merchant scope.
- [Returns metadata (icon, logo) for all supported destination types.](https://docs.winkpg.io/docs/api/GET_api_notifications_destinations_types_metadata.md): `GET /api/notifications/destinations/types/metadata`. Requires: Notifications.Destinations, merchant scope.
- [Delete a NotificationDestination](https://docs.winkpg.io/docs/api/DELETE_api_notifications_destinations_id.md): `DELETE /api/notifications/destinations/{id}`. Requires: Notifications.Destinations, Notifications.Destinations.Delete, merchant scope.
- [Get a NotificationDestination](https://docs.winkpg.io/docs/api/GET_api_notifications_destinations_id.md): `GET /api/notifications/destinations/{id}`. Requires: Notifications.Destinations, merchant scope.
- [Update a NotificationDestination](https://docs.winkpg.io/docs/api/PUT_api_notifications_destinations_id.md): `PUT /api/notifications/destinations/{id}`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Check NotificationDestination access](https://docs.winkpg.io/docs/api/GET_api_notifications_destinations_id_access.md): `GET /api/notifications/destinations/{id}/access`. Requires: Notifications.Destinations, merchant scope.
- [Disables a destination.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_id_disable.md): `POST /api/notifications/destinations/{id}/disable`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Duplicates a destination.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_id_duplicate.md): `POST /api/notifications/destinations/{id}/duplicate`. Requires: Notifications.Destinations, Notifications.Destinations.Create, merchant scope.
- [Enables a destination.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_id_enable.md): `POST /api/notifications/destinations/{id}/enable`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Get a NotificationDestination name by id](https://docs.winkpg.io/docs/api/GET_api_notifications_destinations_id_name.md): `GET /api/notifications/destinations/{id}/name`. Requires: Notifications.Destinations, merchant scope.
- [Restore a deleted NotificationDestination](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_id_restore.md): `POST /api/notifications/destinations/{id}/restore`. Requires: Notifications.Destinations, merchant scope.
- [Sends a realistic sample of one event type to a saved webhook destination. The body is the sample the event catalog publishes for that type, signed exactly as a real delivery is and marked with an additive `X-WinkPG-Sample: true` header. No delivery record is created.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_id_send-sample.md): `POST /api/notifications/destinations/{id}/send-sample`. Requires: Notifications.Destinations, Notifications.Destinations.Test, merchant scope.
- [Gets the durable suppression state for a destination's endpoint. Returns `null` when the endpoint has never failed, or when the transport type has no endpoint concept.](https://docs.winkpg.io/docs/api/GET_api_notifications_destinations_id_suppression.md): `GET /api/notifications/destinations/{id}/suppression`. Requires: Notifications.Destinations, merchant scope.
- [Clears the suppression on a destination's endpoint so delivery resumes on the next event.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_id_suppression_clear.md): `POST /api/notifications/destinations/{id}/suppression/clear`. Requires: Notifications.Destinations, Notifications.Suppressions.Clear, merchant scope.
- [Tests a saved destination by sending a test notification.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_id_test.md): `POST /api/notifications/destinations/{id}/test`. Requires: Notifications.Destinations, Notifications.Destinations.Test, merchant scope.
- [Tests a destination configuration without requiring a saved entity.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_type_test-config.md): `POST /api/notifications/destinations/{type}/test-config`. Requires: Notifications.Destinations, Notifications.Destinations.Create, merchant scope.
- [Validates destination configuration for a specific type.](https://docs.winkpg.io/docs/api/POST_api_notifications_destinations_type_validate.md): `POST /api/notifications/destinations/{type}/validate`. Requires: Notifications.Destinations, merchant scope.
- [Returns all event types available for the current user's scope.](https://docs.winkpg.io/docs/api/GET_api_notifications_event-types.md): `GET /api/notifications/event-types`. Requires: Notifications.EventTypes, merchant scope.
- [Describes the webhook payload schema and an illustrative sample for a specific event type.](https://docs.winkpg.io/docs/api/GET_api_notifications_event-types_eventType_payload-schema.md): `GET /api/notifications/event-types/{eventType}/payload-schema`. Requires: Notifications.EventTypes, merchant scope.
- [Returns a sample payload for a specific event type.](https://docs.winkpg.io/docs/api/GET_api_notifications_event-types_eventType_sample-payload.md): `GET /api/notifications/event-types/{eventType}/sample-payload`. Requires: Notifications.EventTypes, merchant scope.
- [Validates a filter expression.](https://docs.winkpg.io/docs/api/POST_api_notifications_filters_validate.md): `POST /api/notifications/filters/validate`. Requires: Notifications.Subscriptions, merchant scope.
- [Get a list of NotificationSubscriptions](https://docs.winkpg.io/docs/api/GET_api_notifications_subscriptions.md): `GET /api/notifications/subscriptions`. Requires: Notifications.Subscriptions, merchant scope.
- [Create a NotificationSubscription](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions.md): `POST /api/notifications/subscriptions`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Create, merchant scope.
- [Retrieves a continuation-based page of NotificationSubscriptions.](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions_list_continuation.md): `POST /api/notifications/subscriptions/list/continuation`. Requires: Notifications.Subscriptions, merchant scope.
- [Counts the NotificationSubscriptions that match a filter.](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions_list_continuation_count.md): `POST /api/notifications/subscriptions/list/continuation/count`. Requires: Notifications.Subscriptions, merchant scope.
- [Counts NotificationSubscriptions for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions_list_continuation_summary-counts.md): `POST /api/notifications/subscriptions/list/continuation/summary-counts`. Requires: Notifications.Subscriptions, merchant scope.
- [Delete a NotificationSubscription](https://docs.winkpg.io/docs/api/DELETE_api_notifications_subscriptions_id.md): `DELETE /api/notifications/subscriptions/{id}`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Delete, merchant scope.
- [Get a NotificationSubscription](https://docs.winkpg.io/docs/api/GET_api_notifications_subscriptions_id.md): `GET /api/notifications/subscriptions/{id}`. Requires: Notifications.Subscriptions, merchant scope.
- [Update a NotificationSubscription](https://docs.winkpg.io/docs/api/PUT_api_notifications_subscriptions_id.md): `PUT /api/notifications/subscriptions/{id}`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Update, merchant scope.
- [Check NotificationSubscription access](https://docs.winkpg.io/docs/api/GET_api_notifications_subscriptions_id_access.md): `GET /api/notifications/subscriptions/{id}/access`. Requires: Notifications.Subscriptions, merchant scope.
- [Disables a subscription.](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions_id_disable.md): `POST /api/notifications/subscriptions/{id}/disable`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Update, merchant scope.
- [Duplicates a subscription.](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions_id_duplicate.md): `POST /api/notifications/subscriptions/{id}/duplicate`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Create, merchant scope.
- [Enables a subscription.](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions_id_enable.md): `POST /api/notifications/subscriptions/{id}/enable`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Update, merchant scope.
- [Get a NotificationSubscription name by id](https://docs.winkpg.io/docs/api/GET_api_notifications_subscriptions_id_name.md): `GET /api/notifications/subscriptions/{id}/name`. Requires: Notifications.Subscriptions, merchant scope.
- [Restore a deleted NotificationSubscription](https://docs.winkpg.io/docs/api/POST_api_notifications_subscriptions_id_restore.md): `POST /api/notifications/subscriptions/{id}/restore`. Requires: Notifications.Subscriptions, merchant scope.
- [Handles unsubscribe link clicks from emails. Validates the token and displays a confirmation page.](https://docs.winkpg.io/docs/api/GET_api_notifications_unsubscribe.md): `GET /api/notifications/unsubscribe`. No permission required.
- [Handles RFC 8058 one-click unsubscribe (POST with List-Unsubscribe-Post header).](https://docs.winkpg.io/docs/api/POST_api_notifications_unsubscribe.md): `POST /api/notifications/unsubscribe`. No permission required.
- [Confirms the unsubscribe request and disables the subscription.](https://docs.winkpg.io/docs/api/POST_api_notifications_unsubscribe_confirm.md): `POST /api/notifications/unsubscribe/confirm`. No permission required.

## PazeCertificates

- [Complete the Production round-trip by merging a CA-signed certificate.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_paze_certificates_environment_complete.md): `POST /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/complete`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Download the pending CSR (Production).](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_paze_certificates_environment_csr.md): `GET /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/csr`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Generate or regenerate a certificate.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_paze_certificates_environment_generate.md): `POST /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/generate`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Cancel a pending CSR round-trip.](https://docs.winkpg.io/docs/api/DELETE_api_payment-tokenization_wallet-providers_paze_certificates_environment_pending.md): `DELETE /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/pending`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Download the active public certificate to register with Paze.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_paze_certificates_environment_public.md): `GET /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/public`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Get the live lifecycle status.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_paze_certificates_environment_status.md): `GET /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/status`. Requires: PaymentTokenization.SettingManagement, merchant scope.

## PazeJwks

- [Public JWKS for an environment. Anonymous and unthrottled: Paze fetches it to verify/encrypt.](https://docs.winkpg.io/docs/api/GET_.well-known_paze_environment_jwks.json.md): `GET /.well-known/paze/{environment}/jwks.json`. No permission required.
- [Admin preview of an environment's JWKS, for verifying it before registering the URL with Paze.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_paze_jwks_environment.md): `GET /api/payment-tokenization/wallet-providers/paze/jwks/{environment}`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Download an environment's JWKS as a `.json` file attachment (admin, from the Settings panel).](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_paze_jwks_environment_download.md): `GET /api/payment-tokenization/wallet-providers/paze/jwks/{environment}/download`. Requires: PaymentTokenization.SettingManagement, merchant scope.

## ProcessorMetadata

- [Lists every supported processor with its identifier, display name, and supported payment types.](https://docs.winkpg.io/docs/api/GET_api_processors.md): `GET /api/processors`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.
- [Returns the configuration field schema for a single processor, optionally scoped to the given payment types.](https://docs.winkpg.io/docs/api/GET_api_processors_processorId_config-schema.md): `GET /api/processors/{processorId}/config-schema`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.
- [Returns a ready-to-fill processor profile skeleton for the given processor and payment-type selection, suitable for dropping into `processing.processorProfiles\[\]` on a merchant create/update.](https://docs.winkpg.io/docs/api/GET_api_processors_processorId_config-schema_template.md): `GET /api/processors/{processorId}/config-schema/template`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.
- [Dry-run validates a processor configuration payload without writing a merchant document, so a client can confirm a payload before submitting it.](https://docs.winkpg.io/docs/api/POST_api_processors_processorId_validate-config.md): `POST /api/processors/{processorId}/validate-config`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.

## RateLimitProfile

- [Rate Limit Profiles: retrieves a paged list of profiles.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_profiles.md): `GET /api/rate-limiting/profiles`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: creates a profile.](https://docs.winkpg.io/docs/api/POST_api_rate-limiting_profiles.md): `POST /api/rate-limiting/profiles`. Requires: RateLimiting.Profiles, RateLimiting.Profiles.Create, merchant scope.
- [Rate Limit Profiles: retrieves a continuation-token paged list of profiles.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_profiles_continuation.md): `GET /api/rate-limiting/profiles/continuation`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: retrieves the approximate total number of profiles matching the input.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_profiles_continuation_count.md): `GET /api/rate-limiting/profiles/continuation/count`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: reports whether the caller may access the profile.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_profiles_entityId_access.md): `GET /api/rate-limiting/profiles/{entityId}/access`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: deletes a profile by id.](https://docs.winkpg.io/docs/api/DELETE_api_rate-limiting_profiles_id.md): `DELETE /api/rate-limiting/profiles/{id}`. Requires: RateLimiting.Profiles, RateLimiting.Profiles.Delete, merchant scope.
- [Rate Limit Profiles: retrieves a single profile by id.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_profiles_id.md): `GET /api/rate-limiting/profiles/{id}`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: updates a profile by id.](https://docs.winkpg.io/docs/api/PUT_api_rate-limiting_profiles_id.md): `PUT /api/rate-limiting/profiles/{id}`. Requires: RateLimiting.Profiles, RateLimiting.Profiles.Update, merchant scope.
- [Rate Limit Profiles: returns a profile's display name.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_profiles_id_name.md): `GET /api/rate-limiting/profiles/{id}/name`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: restores a previously deleted profile.](https://docs.winkpg.io/docs/api/POST_api_rate-limiting_profiles_id_restore.md): `POST /api/rate-limiting/profiles/{id}/restore`. Requires: RateLimiting.Profiles, RateLimiting.Profiles.Update, merchant scope.

## RateLimitRule

- [Rate Limit Rules: retrieves a paged list of rules.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules.md): `GET /api/rate-limiting/rules`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: creates a rule.](https://docs.winkpg.io/docs/api/POST_api_rate-limiting_rules.md): `POST /api/rate-limiting/rules`. Requires: RateLimiting.Rules, RateLimiting.Rules.Create, merchant scope.
- [Rate Limit Rules: retrieves a continuation-token paged list of rules.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules_continuation.md): `GET /api/rate-limiting/rules/continuation`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: retrieves the approximate total number of rules matching the input.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules_continuation_count.md): `GET /api/rate-limiting/rules/continuation/count`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: lists every limiter the running host declares, with its defaults.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules_limiters.md): `GET /api/rate-limiting/rules/limiters`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: lists every profile as a lightweight picker item.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules_profiles.md): `GET /api/rate-limiting/rules/profiles`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: reports whether the caller may access the rule.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules_entityId_access.md): `GET /api/rate-limiting/rules/{entityId}/access`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: deletes a rule by id.](https://docs.winkpg.io/docs/api/DELETE_api_rate-limiting_rules_id.md): `DELETE /api/rate-limiting/rules/{id}`. Requires: RateLimiting.Rules, RateLimiting.Rules.Delete, merchant scope.
- [Rate Limit Rules: retrieves a single rule by id.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules_id.md): `GET /api/rate-limiting/rules/{id}`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: updates a rule by id.](https://docs.winkpg.io/docs/api/PUT_api_rate-limiting_rules_id.md): `PUT /api/rate-limiting/rules/{id}`. Requires: RateLimiting.Rules, RateLimiting.Rules.Update, merchant scope.
- [Rate Limit Rules: returns a rule's display name.](https://docs.winkpg.io/docs/api/GET_api_rate-limiting_rules_id_name.md): `GET /api/rate-limiting/rules/{id}/name`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: restores a previously deleted rule.](https://docs.winkpg.io/docs/api/POST_api_rate-limiting_rules_id_restore.md): `POST /api/rate-limiting/rules/{id}/restore`. Requires: RateLimiting.Rules, RateLimiting.Rules.Update, merchant scope.

## RecurringBilling

- [Get billing history filtered by contract.](https://docs.winkpg.io/docs/api/GET_api_customers_recurring-billing_contracts_contractId_history.md): `GET /api/customers/recurring-billing/contracts/{contractId}/history`. Requires: Customers.RecurringBilling.ViewHistory, merchant scope.
- [Get billing history filtered by customer.](https://docs.winkpg.io/docs/api/GET_api_customers_recurring-billing_customers_customerId_history.md): `GET /api/customers/recurring-billing/customers/{customerId}/history`. Requires: Customers.RecurringBilling.ViewHistory, merchant scope.
- [Get paginated execution history of recurring billing runs.](https://docs.winkpg.io/docs/api/GET_api_customers_recurring-billing_history.md): `GET /api/customers/recurring-billing/history`. Requires: Customers.RecurringBilling.ViewHistory, merchant scope.
- [Get the detail of a specific billing run, including per-contract items.](https://docs.winkpg.io/docs/api/GET_api_customers_recurring-billing_runs_id.md): `GET /api/customers/recurring-billing/runs/{id}`. Requires: Customers.RecurringBilling.ViewHistory, merchant scope.
- [Manually trigger a recurring billing workflow execution.](https://docs.winkpg.io/docs/api/POST_api_customers_recurring-billing_trigger.md): `POST /api/customers/recurring-billing/trigger`. Requires: Customers.RecurringBilling.Trigger, merchant scope.

## Resellers

- [List resellers](https://docs.winkpg.io/docs/api/GET_api_resellers.md): `GET /api/resellers`. Requires: Resellers.Resellers, reseller scope.
- [Create reseller](https://docs.winkpg.io/docs/api/POST_api_resellers.md): `POST /api/resellers`. Requires: Resellers.Resellers, Resellers.Resellers.Create, reseller scope.
- [Gets reseller billing preferences.](https://docs.winkpg.io/docs/api/POST_api_resellers_get-billing-preferences-async.md): `POST /api/resellers/get-billing-preferences-async`. Requires: Resellers.Resellers, Resellers.Resellers.Update, reseller scope.
- [Gets default reseller user.](https://docs.winkpg.io/docs/api/POST_api_resellers_get-default-reseller-user-async.md): `POST /api/resellers/get-default-reseller-user-async`. Requires: Resellers.Resellers, reseller scope.
- [Gets reseller for billing self service.](https://docs.winkpg.io/docs/api/POST_api_resellers_get-for-billing-self-service-async.md): `POST /api/resellers/get-for-billing-self-service-async`. Requires: Resellers.Resellers, Resellers.Resellers.Update, reseller scope.
- [Gets reseller own billing preferences.](https://docs.winkpg.io/docs/api/POST_api_resellers_get-own-billing-preferences-async.md): `POST /api/resellers/get-own-billing-preferences-async`. Requires: Resellers.Resellers, Resellers.Resellers.Update, reseller scope.
- [Retrieves a continuation-based page of Resellers.](https://docs.winkpg.io/docs/api/POST_api_resellers_list_continuation.md): `POST /api/resellers/list/continuation`. Requires: Resellers.Resellers, reseller scope.
- [Counts the Resellers that match a filter.](https://docs.winkpg.io/docs/api/POST_api_resellers_list_continuation_count.md): `POST /api/resellers/list/continuation/count`. Requires: Resellers.Resellers, reseller scope.
- [Counts Resellers for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_resellers_list_continuation_summary-counts.md): `POST /api/resellers/list/continuation/summary-counts`. Requires: Resellers.Resellers, reseller scope.
- [Updates reseller billing preferences.](https://docs.winkpg.io/docs/api/POST_api_resellers_update-billing-preferences-async.md): `POST /api/resellers/update-billing-preferences-async`. Requires: Resellers.Resellers, Resellers.Resellers.Update, reseller scope.
- [Updates reseller own billing preferences.](https://docs.winkpg.io/docs/api/POST_api_resellers_update-own-billing-preferences-async.md): `POST /api/resellers/update-own-billing-preferences-async`. Requires: Resellers.Resellers, Resellers.Resellers.Update, reseller scope.
- [Delete reseller](https://docs.winkpg.io/docs/api/DELETE_api_resellers_id.md): `DELETE /api/resellers/{id}`. Requires: Resellers.Resellers, Resellers.Resellers.Delete, reseller scope.
- [Get reseller by ID](https://docs.winkpg.io/docs/api/GET_api_resellers_id.md): `GET /api/resellers/{id}`. Requires: Resellers.Resellers, reseller scope.
- [Update reseller](https://docs.winkpg.io/docs/api/PUT_api_resellers_id.md): `PUT /api/resellers/{id}`. Requires: Resellers.Resellers, Resellers.Resellers.Update, reseller scope.
- [Check reseller access](https://docs.winkpg.io/docs/api/GET_api_resellers_id_access.md): `GET /api/resellers/{id}/access`. Requires: Resellers.Resellers, reseller scope.
- [Get reseller name](https://docs.winkpg.io/docs/api/GET_api_resellers_id_name.md): `GET /api/resellers/{id}/name`. Requires: Resellers.Resellers, reseller scope.
- [Restore deleted reseller](https://docs.winkpg.io/docs/api/POST_api_resellers_id_restore.md): `POST /api/resellers/{id}/restore`. Requires: Resellers.Resellers, reseller scope.

## Roles

- [List roles](https://docs.winkpg.io/docs/api/GET_api_identity_roles.md): `GET /api/identity/roles`. Requires: AbpIdentity.Roles, host scope.
- [Create new role](https://docs.winkpg.io/docs/api/POST_api_identity_roles.md): `POST /api/identity/roles`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Create, host scope.
- [Get all roles](https://docs.winkpg.io/docs/api/GET_api_identity_roles_all.md): `GET /api/identity/roles/all`. Requires: AbpIdentity.Roles, host scope.
- [GetAllClaimTypes for Role](https://docs.winkpg.io/docs/api/GET_api_identity_roles_all-claim-types.md): `GET /api/identity/roles/all-claim-types`. Requires: AbpIdentity.Roles, host scope.
- [Delete role](https://docs.winkpg.io/docs/api/DELETE_api_identity_roles_id.md): `DELETE /api/identity/roles/{id}`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Delete, host scope.
- [Get role by ID](https://docs.winkpg.io/docs/api/GET_api_identity_roles_id.md): `GET /api/identity/roles/{id}`. Requires: AbpIdentity.Roles, host scope.
- [Update role](https://docs.winkpg.io/docs/api/PUT_api_identity_roles_id.md): `PUT /api/identity/roles/{id}`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.
- [GetClaims for Role](https://docs.winkpg.io/docs/api/GET_api_identity_roles_id_claims.md): `GET /api/identity/roles/{id}/claims`. Requires: AbpIdentity.Roles, host scope.
- [Update role claims](https://docs.winkpg.io/docs/api/PUT_api_identity_roles_id_claims.md): `PUT /api/identity/roles/{id}/claims`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.
- [Move all users to role](https://docs.winkpg.io/docs/api/PUT_api_identity_roles_id_move-all-users.md): `PUT /api/identity/roles/{id}/move-all-users`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.
- [/api/identity/roles/{id}/users/{userId}](https://docs.winkpg.io/docs/api/DELETE_api_identity_roles_id_users_userId.md): `DELETE /api/identity/roles/{id}/users/{userId}`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.

## ScreeningProviderMetadata

- [Lists every supported screening provider with its identifier, display name, and declared processor conflicts.](https://docs.winkpg.io/docs/api/GET_api_screening-providers.md): `GET /api/screening-providers`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.
- [Returns the configuration field schema for a single screening provider.](https://docs.winkpg.io/docs/api/GET_api_screening-providers_providerId_config-schema.md): `GET /api/screening-providers/{providerId}/config-schema`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.
- [Returns a ready-to-fill screening provider profile skeleton, suitable for dropping into `processing.screeningProviderProfiles\[\]` on a merchant create/update.](https://docs.winkpg.io/docs/api/GET_api_screening-providers_providerId_config-schema_template.md): `GET /api/screening-providers/{providerId}/config-schema/template`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.
- [Dry-run validates a screening provider configuration payload without writing a merchant document.](https://docs.winkpg.io/docs/api/POST_api_screening-providers_providerId_validate-config.md): `POST /api/screening-providers/{providerId}/validate-config`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.

## Security

- [/api/app/my-security-log/approximate-total-count](https://docs.winkpg.io/docs/api/GET_api_app_my-security-log_approximate-total-count.md): `GET /api/app/my-security-log/approximate-total-count`. No permission required.
- [/api/app/my-security-log/continuation-list](https://docs.winkpg.io/docs/api/GET_api_app_my-security-log_continuation-list.md): `GET /api/app/my-security-log/continuation-list`. No permission required.
- [/api/app/my-security-log/summary-counts](https://docs.winkpg.io/docs/api/GET_api_app_my-security-log_summary-counts.md): `GET /api/app/my-security-log/summary-counts`. No permission required.
- [/api/app/my-security-log/{id}/ensure-entity-access](https://docs.winkpg.io/docs/api/POST_api_app_my-security-log_id_ensure-entity-access.md): `POST /api/app/my-security-log/{id}/ensure-entity-access`. No permission required.
- [/api/app/my-security-log/{id}/try-ensure-entity-access](https://docs.winkpg.io/docs/api/POST_api_app_my-security-log_id_try-ensure-entity-access.md): `POST /api/app/my-security-log/{id}/try-ensure-entity-access`. No permission required.
- [List archived SBOM builds, most-recent-first, with continuation-token paging.](https://docs.winkpg.io/docs/api/GET_api_security-posture_sbom_builds.md): `GET /api/security-posture/sbom/builds`. Requires: SecurityPosture.Sbom, merchant scope.
- [Return the component manifest for a single build.](https://docs.winkpg.io/docs/api/GET_api_security-posture_sbom_builds_buildId.md): `GET /api/security-posture/sbom/builds/{buildId}`. Requires: SecurityPosture.Sbom, merchant scope.
- [Stream the CycloneDX JSON for one component within a build. Each call is audit-logged.](https://docs.winkpg.io/docs/api/GET_api_security-posture_sbom_builds_buildId_components_componentName.md): `GET /api/security-posture/sbom/builds/{buildId}/components/{componentName}`. Requires: SecurityPosture.Sbom, SecurityPosture.Sbom.Download, merchant scope.

## SettlementReporting

- [Returns the full detail of one settlement batch, including the per-payment-type breakdown.](https://docs.winkpg.io/docs/api/GET_api_transactions_settlement-reports_batches_settlementBatchId.md): `GET /api/transactions/settlement-reports/batches/{settlementBatchId}`. No permission required.
- [Returns a page of settlement batches matching the supplied filters, newest run first.](https://docs.winkpg.io/docs/api/GET_api_transactions_settlement-reports_history.md): `GET /api/transactions/settlement-reports/history`. No permission required.

## SmsConsent

- [Lists SMS consent records for the caller's scope, newest transition first, with cursor-based paging.](https://docs.winkpg.io/docs/api/GET_api_twilio_sms-consent.md): `GET /api/twilio/sms-consent`. Requires: Twilio.SmsConsent.View, merchant scope.
- [Records a consent or opt-out transition with its proof-of-consent evidence.](https://docs.winkpg.io/docs/api/POST_api_twilio_sms-consent.md): `POST /api/twilio/sms-consent`. Requires: Twilio.SmsConsent.View, Twilio.SmsConsent.Manage, merchant scope.
- [Checks whether SMS may be sent to a phone number for the caller's merchant scope.](https://docs.winkpg.io/docs/api/GET_api_twilio_sms-consent_check.md): `GET /api/twilio/sms-consent/check`. Requires: Twilio.SmsConsent.View, merchant scope.

## SmsLog

- [Lists outbound SMS delivery records for the caller's scope, newest first, with cursor-based paging.](https://docs.winkpg.io/docs/api/GET_api_twilio_sms-log.md): `GET /api/twilio/sms-log`. Requires: Twilio.SmsLog.View, merchant scope.
- [Gets the delivery record for a single outbound message by its correlation id.](https://docs.winkpg.io/docs/api/GET_api_twilio_sms-log_by-correlation_correlationId.md): `GET /api/twilio/sms-log/by-correlation/{correlationId}`. Requires: Twilio.SmsLog.View, merchant scope.

## SurchargeConfiguration

- [Surcharging: Creates a merchant's initial surcharge configuration.](https://docs.winkpg.io/docs/api/POST_api_surcharging_configurations.md): `POST /api/surcharging/configurations`. Requires: Surcharging.Configuration.Manage, merchant scope.
- [Surcharging: Updates a merchant's rate, channel restrictions, and network policies.](https://docs.winkpg.io/docs/api/PUT_api_surcharging_configurations.md): `PUT /api/surcharging/configurations`. Requires: Surcharging.Configuration.Manage, merchant scope.
- [Surcharging: Records a filed card-brand notice and starts the waiting period.](https://docs.winkpg.io/docs/api/POST_api_surcharging_configurations_notices.md): `POST /api/surcharging/configurations/notices`. Requires: Surcharging.Notice.File, merchant scope.
- [Surcharging: Returns a merchant's surcharge configuration, or null when none exists.](https://docs.winkpg.io/docs/api/GET_api_surcharging_configurations_merchantId.md): `GET /api/surcharging/configurations/{merchantId}`. Requires: Surcharging.Configuration.View, merchant scope.
- [Surcharging: Disables surcharging for a merchant.](https://docs.winkpg.io/docs/api/POST_api_surcharging_configurations_merchantId_disable.md): `POST /api/surcharging/configurations/{merchantId}/disable`. Requires: Surcharging.Configuration.Manage, merchant scope.
- [Surcharging: Enables surcharging for a merchant.](https://docs.winkpg.io/docs/api/POST_api_surcharging_configurations_merchantId_enable.md): `POST /api/surcharging/configurations/{merchantId}/enable`. Requires: Surcharging.Configuration.Manage, merchant scope.
- [Surcharging: Returns a merchant's per-state restriction table.](https://docs.winkpg.io/docs/api/GET_api_surcharging_configurations_merchantId_state-policies.md): `GET /api/surcharging/configurations/{merchantId}/state-policies`. Requires: Surcharging.Configuration.View, merchant scope.
- [Surcharging: Replaces a merchant's per-state restriction table (operator action).](https://docs.winkpg.io/docs/api/PUT_api_surcharging_configurations_merchantId_state-policies.md): `PUT /api/surcharging/configurations/{merchantId}/state-policies`. Requires: Surcharging.Admin.GlobalSettings, merchant scope.

## SurchargeQuote

- [Surcharging: Quotes surcharge eligibility for a card BIN prefix and amount.](https://docs.winkpg.io/docs/api/POST_api_surcharging_quote.md): `POST /api/surcharging/quote`. Requires: Surcharging.Configuration.View, merchant scope.

## Tokens

- [List payment tokens](https://docs.winkpg.io/docs/api/GET_api_tokens.md): `GET /api/tokens`. No permission required.
- [Create payment token](https://docs.winkpg.io/docs/api/POST_api_tokens.md): `POST /api/tokens`. No permission required.
- [Cans payment token delete.](https://docs.winkpg.io/docs/api/POST_api_tokens_can-delete-async.md): `POST /api/tokens/can-delete-async`. No permission required.
- [Creates payment token from transaction.](https://docs.winkpg.io/docs/api/POST_api_tokens_create-from-transaction-async.md): `POST /api/tokens/create-from-transaction-async`. No permission required.
- [CreateStandalone for Tokens](https://docs.winkpg.io/docs/api/POST_api_tokens_create-standalone-async.md): `POST /api/tokens/create-standalone-async`. No permission required.
- [Deactivates a PaymentToken.](https://docs.winkpg.io/docs/api/POST_api_tokens_deactivate-async.md): `POST /api/tokens/deactivate-async`. No permission required.
- [Retrieves a continuation-based page of PaymentTokens.](https://docs.winkpg.io/docs/api/POST_api_tokens_list_continuation.md): `POST /api/tokens/list/continuation`. No permission required.
- [Counts the PaymentTokens that match a filter.](https://docs.winkpg.io/docs/api/POST_api_tokens_list_continuation_count.md): `POST /api/tokens/list/continuation/count`. No permission required.
- [Counts PaymentTokens for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_tokens_list_continuation_summary-counts.md): `POST /api/tokens/list/continuation/summary-counts`. No permission required.
- [Reactivates a PaymentToken.](https://docs.winkpg.io/docs/api/POST_api_tokens_reactivate-async.md): `POST /api/tokens/reactivate-async`. No permission required.
- [Regenerates a PaymentToken.](https://docs.winkpg.io/docs/api/POST_api_tokens_regenerate-async.md): `POST /api/tokens/regenerate-async`. No permission required.
- [ResolvePaymentToken for Tokens](https://docs.winkpg.io/docs/api/POST_api_tokens_resolve-payment-token-async.md): `POST /api/tokens/resolve-payment-token-async`. No permission required.
- [Delete payment token](https://docs.winkpg.io/docs/api/DELETE_api_tokens_id.md): `DELETE /api/tokens/{id}`. No permission required.
- [Get payment token](https://docs.winkpg.io/docs/api/GET_api_tokens_id.md): `GET /api/tokens/{id}`. No permission required.
- [Update payment token](https://docs.winkpg.io/docs/api/PUT_api_tokens_id.md): `PUT /api/tokens/{id}`. No permission required.

## Transactions

- [List transactions](https://docs.winkpg.io/docs/api/GET_api_transactions.md): `GET /api/transactions`. No permission required.
- [Create transaction](https://docs.winkpg.io/docs/api/POST_api_transactions.md): `POST /api/transactions`. Requires: Transactions.Reports, merchant scope.
- [Gets a filtered, paged list of batch files.](https://docs.winkpg.io/docs/api/GET_api_transactions_batch-file.md): `GET /api/transactions/batch-file`. No permission required.
- [Uploads a CSV batch file for transaction processing.](https://docs.winkpg.io/docs/api/POST_api_transactions_batch-file_upload.md): `POST /api/transactions/batch-file/upload`. No permission required.
- [Deletes a batch file and its associated blob storage content.](https://docs.winkpg.io/docs/api/DELETE_api_transactions_batch-file_id.md): `DELETE /api/transactions/batch-file/{id}`. No permission required.
- [Gets a batch file by its unique identifier.](https://docs.winkpg.io/docs/api/GET_api_transactions_batch-file_id.md): `GET /api/transactions/batch-file/{id}`. No permission required.
- [Cancels a batch file that is pending or in progress.](https://docs.winkpg.io/docs/api/POST_api_transactions_batch-file_id_cancel.md): `POST /api/transactions/batch-file/{id}/cancel`. No permission required.
- [Downloads the original uploaded CSV batch file.](https://docs.winkpg.io/docs/api/GET_api_transactions_batch-file_id_download.md): `GET /api/transactions/batch-file/{id}/download`. No permission required.
- [Exports batch processing results as a CSV file.](https://docs.winkpg.io/docs/api/GET_api_transactions_batch-file_id_export-results.md): `GET /api/transactions/batch-file/{id}/export-results`. No permission required.
- [Triggers asynchronous processing of a batch file.](https://docs.winkpg.io/docs/api/POST_api_transactions_batch-file_id_trigger-processing.md): `POST /api/transactions/batch-file/{id}/trigger-processing`. No permission required.
- [Creates transaction from hpp session.](https://docs.winkpg.io/docs/api/POST_api_transactions_from-hpp-session.md): `POST /api/transactions/from-hpp-session`. No permission required.
- [Gets transaction by idempotency key.](https://docs.winkpg.io/docs/api/POST_api_transactions_get-by-idempotency-key-async.md): `POST /api/transactions/get-by-idempotency-key-async`. Requires: Transactions.Reports.View, merchant scope.
- [Gets transaction by id.](https://docs.winkpg.io/docs/api/POST_api_transactions_get-transaction-by-id-async.md): `POST /api/transactions/get-transaction-by-id-async`. No permission required.
- [Gets unsettled transaction summary by processor profile.](https://docs.winkpg.io/docs/api/POST_api_transactions_get-unsettled-transaction-summary-by-processor-profile-async.md): `POST /api/transactions/get-unsettled-transaction-summary-by-processor-profile-async`. No permission required.
- [Retrieves a continuation-based page of Transactions.](https://docs.winkpg.io/docs/api/POST_api_transactions_list_continuation.md): `POST /api/transactions/list/continuation`. No permission required.
- [Counts the Transactions that match a filter.](https://docs.winkpg.io/docs/api/POST_api_transactions_list_continuation_count.md): `POST /api/transactions/list/continuation/count`. No permission required.
- [Counts Transactions for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_transactions_list_continuation_summary-counts.md): `POST /api/transactions/list/continuation/summary-counts`. No permission required.
- [Rolls up the window's transactions by merchant.](https://docs.winkpg.io/docs/api/GET_api_transactions_reports_merchant-summary.md): `GET /api/transactions/reports/merchant-summary`. Requires: Transactions.Reports.Summary, merchant scope.
- [Rolls up the window's transactions by payment type.](https://docs.winkpg.io/docs/api/GET_api_transactions_reports_paytype-summary.md): `GET /api/transactions/reports/paytype-summary`. Requires: Transactions.Reports.Summary, merchant scope.
- [Apply a manual settlement-status override to one or more transactions.](https://docs.winkpg.io/docs/api/POST_api_transactions_settlement-override.md): `POST /api/transactions/settlement-override`. Requires: Transactions.Settlement.Override, merchant scope.
- [Trigger settlement for a specific merchant.](https://docs.winkpg.io/docs/api/POST_api_transactions_settlements_merchants_merchantId_trigger.md): `POST /api/transactions/settlements/merchants/{merchantId}/trigger`. No permission required.
- [Trigger settlement for all eligible merchants.](https://docs.winkpg.io/docs/api/POST_api_transactions_settlements_trigger.md): `POST /api/transactions/settlements/trigger`. Requires: Transactions.Settlement.Trigger, merchant scope.
- [Get transaction by ID](https://docs.winkpg.io/docs/api/GET_api_transactions_id.md): `GET /api/transactions/{id}`. No permission required.
- [Updates transaction tags.](https://docs.winkpg.io/docs/api/PUT_api_transactions_id_tags.md): `PUT /api/transactions/{id}/tags`. Requires: Transactions.Reports, merchant scope.
- [Execute a follow-up operation on an existing transaction.](https://docs.winkpg.io/docs/api/POST_api_transactions_merchantId_transactionId_operations.md): `POST /api/transactions/{merchantId}/{transactionId}/operations`. No permission required.
- [Legacy single-id route retained for backward compatibility. Resolves `MerchantId` via a cross-partition lookup, then forwards to the merchant-scoped path. New callers should target the merchant-scoped route directly. The `Deprecation` response header lets client telemetry pick up traffic on this route during the migration.](https://docs.winkpg.io/docs/api/POST_api_transactions_transactionId_operations.md): `POST /api/transactions/{transactionId}/operations` (deprecated). No permission required.

## Usage

- [List entitlements with optional filters using continuation-token paging.](https://docs.winkpg.io/docs/api/GET_api_usage_entitlements.md): `GET /api/usage/entitlements`. Requires: Usage.PlatformDefaults, merchant scope.
- [Create a new entitlement. The application service performs scope-specific manage-permission checks.](https://docs.winkpg.io/docs/api/POST_api_usage_entitlements.md): `POST /api/usage/entitlements`. No permission required.
- [Resolve the effective entitlement at a given scope (Merchant → Reseller → Platform → Default).](https://docs.winkpg.io/docs/api/GET_api_usage_entitlements_effective.md): `GET /api/usage/entitlements/effective`. Requires: Usage.PlatformDefaults, merchant scope.
- [Delete an entitlement. The application service performs scope-specific manage-permission checks.](https://docs.winkpg.io/docs/api/DELETE_api_usage_entitlements_id.md): `DELETE /api/usage/entitlements/{id}`. No permission required.
- [Get an entitlement by ID.](https://docs.winkpg.io/docs/api/GET_api_usage_entitlements_id.md): `GET /api/usage/entitlements/{id}`. Requires: Usage.PlatformDefaults, merchant scope.
- [Update an existing entitlement. The application service performs scope-specific manage-permission checks.](https://docs.winkpg.io/docs/api/PUT_api_usage_entitlements_id.md): `PUT /api/usage/entitlements/{id}`. No permission required.
- [Get a paged dimensional rollup for a SKU.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_dimensional-summary.md): `GET /api/usage/reports/dimensional-summary`. Requires: Usage.Reports, merchant scope.
- [Export merchant ledger entries.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_ledger_export.md): `GET /api/usage/reports/ledger/export`. Requires: Usage.Reports.Export, merchant scope.
- [Get paginated merchant ledger entries.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_merchant-ledger.md): `GET /api/usage/reports/merchant-ledger`. Requires: Usage.Reports, merchant scope.
- [Get a merchant's usage summary for a given period.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_merchant-summary.md): `GET /api/usage/reports/merchant-summary`. Requires: Usage.Reports, merchant scope.
- [Get per-merchant usage breakdown for a reseller.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_reseller-merchant-breakdown.md): `GET /api/usage/reports/reseller-merchant-breakdown`. Requires: Usage.Reports, merchant scope.
- [Get a reseller's aggregated usage summary across all their merchants.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_reseller-summary.md): `GET /api/usage/reports/reseller-summary`. Requires: Usage.Reports, merchant scope.
- [List all registered SKU definitions.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_skus.md): `GET /api/usage/reports/skus`. Requires: Usage.Skus, merchant scope.
- [Export the merchant SKU summary.](https://docs.winkpg.io/docs/api/GET_api_usage_reports_summary_export.md): `GET /api/usage/reports/summary/export`. Requires: Usage.Reports.Export, merchant scope.

## UserFavorites

- [Remove (unpin) a favorite for the operating user.](https://docs.winkpg.io/docs/api/DELETE_api_favorites_user.md): `DELETE /api/favorites/user`. Requires: Favorites.Manage, merchant scope.
- [List the operating user's favorites, bucketed by whether they match the current operating context.](https://docs.winkpg.io/docs/api/GET_api_favorites_user.md): `GET /api/favorites/user`. Requires: Favorites.Manage, merchant scope.
- [Pin an entity as a favorite for the operating user.](https://docs.winkpg.io/docs/api/POST_api_favorites_user.md): `POST /api/favorites/user`. Requires: Favorites.Manage, merchant scope.
- [Count the operating user's favorites across every entity type.](https://docs.winkpg.io/docs/api/GET_api_favorites_user_count.md): `GET /api/favorites/user/count`. Requires: Favorites.Manage, merchant scope.
- [List the entity ids the operating user has favorited for a single entity type.](https://docs.winkpg.io/docs/api/GET_api_favorites_user_ids.md): `GET /api/favorites/user/ids`. Requires: Favorites.Manage, merchant scope.

## Users

- [GetAllList for User](https://docs.winkpg.io/docs/api/GET_api_account_link-user.md): `GET /api/account/link-user`. No permission required.
- [List sessions](https://docs.winkpg.io/docs/api/GET_api_account_sessions.md): `GET /api/account/sessions`. No permission required.
- [Revoke for Sessions](https://docs.winkpg.io/docs/api/DELETE_api_account_sessions_id.md): `DELETE /api/account/sessions/{id}`. No permission required.
- [Get session](https://docs.winkpg.io/docs/api/GET_api_account_sessions_id.md): `GET /api/account/sessions/{id}`. No permission required.
- [List users](https://docs.winkpg.io/docs/api/GET_api_identity_users.md): `GET /api/identity/users`. Requires: AbpIdentity.Users, host scope.
- [Create new user](https://docs.winkpg.io/docs/api/POST_api_identity_users.md): `POST /api/identity/users`. Requires: AbpIdentity.Users, AbpIdentity.Users.Create, host scope.
- [GetAllClaimTypes for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_all-claim-types.md): `GET /api/identity/users/all-claim-types`. Requires: AbpIdentity.Users, host scope.
- [Gets the approximate total count of users based on the provided input.](https://docs.winkpg.io/docs/api/GET_api_identity_users_approximate-count.md): `GET /api/identity/users/approximate-count`. Requires: AbpIdentity.Users, host scope.
- [Get assignable roles](https://docs.winkpg.io/docs/api/GET_api_identity_users_assignable-roles.md): `GET /api/identity/users/assignable-roles`. Requires: AbpIdentity.Users, host scope.
- [GetAvailableOrganizationUnits for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_available-organization-units.md): `GET /api/identity/users/available-organization-units`. Requires: AbpIdentity.Users, host scope.
- [Find user by email](https://docs.winkpg.io/docs/api/GET_api_identity_users_by-email_email.md): `GET /api/identity/users/by-email/{email}`. Requires: AbpIdentity.Users, host scope.
- [FindById for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_by-id_id.md): `GET /api/identity/users/by-id/{id}`. Requires: AbpIdentity.Users, host scope.
- [Find user by username](https://docs.winkpg.io/docs/api/GET_api_identity_users_by-username_username.md): `GET /api/identity/users/by-username/{username}`. Requires: AbpIdentity.Users, host scope.
- [Retrieves a paged list of users using continuation tokens for efficient pagination.](https://docs.winkpg.io/docs/api/GET_api_identity_users_continuation-list.md): `GET /api/identity/users/continuation-list`. Requires: AbpIdentity.Users, host scope.
- [GetDownloadToken for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_download-token.md): `GET /api/identity/users/download-token`. Requires: AbpIdentity.Users, host scope.
- [GetListAsCsvFile for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_export-as-csv.md): `GET /api/identity/users/export-as-csv`. No permission required.
- [GetListAsExcelFile for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_export-as-excel.md): `GET /api/identity/users/export-as-excel`. No permission required.
- [GetExternalLoginProviders for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_external-login-Providers.md): `GET /api/identity/users/external-login-Providers`. Requires: AbpIdentity.Users, AbpIdentity.Users.Import, host scope.
- [Import external user](https://docs.winkpg.io/docs/api/POST_api_identity_users_import-external-user.md): `POST /api/identity/users/import-external-user`. Requires: AbpIdentity.Users, AbpIdentity.Users.Import, host scope.
- [ImportUsersFromFile for User](https://docs.winkpg.io/docs/api/POST_api_identity_users_import-users-from-file.md): `POST /api/identity/users/import-users-from-file`. Requires: AbpIdentity.Users, AbpIdentity.Users.Import, host scope.
- [GetOrganizationUnitLookup for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_lookup_organization-units.md): `GET /api/identity/users/lookup/organization-units`. Requires: AbpIdentity.Users, host scope.
- [GetRoleLookup for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_lookup_roles.md): `GET /api/identity/users/lookup/roles`. Requires: AbpIdentity.Users, host scope.
- [Delete user](https://docs.winkpg.io/docs/api/DELETE_api_identity_users_id.md): `DELETE /api/identity/users/{id}`. Requires: AbpIdentity.Users, AbpIdentity.Users.Delete, host scope.
- [Get user by ID](https://docs.winkpg.io/docs/api/GET_api_identity_users_id.md): `GET /api/identity/users/{id}`. Requires: AbpIdentity.Users, host scope.
- [Update user](https://docs.winkpg.io/docs/api/PUT_api_identity_users_id.md): `PUT /api/identity/users/{id}`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [Checks if the user has access to the specified entity.](https://docs.winkpg.io/docs/api/GET_api_identity_users_id_access.md): `GET /api/identity/users/{id}/access`. Requires: AbpIdentity.Users, host scope.
- [UpdatePassword for User](https://docs.winkpg.io/docs/api/PUT_api_identity_users_id_change-password.md): `PUT /api/identity/users/{id}/change-password`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [GetClaims for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_id_claims.md): `GET /api/identity/users/{id}/claims`. Requires: AbpIdentity.Users, host scope.
- [Update user claims](https://docs.winkpg.io/docs/api/PUT_api_identity_users_id_claims.md): `PUT /api/identity/users/{id}/claims`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [Lock user account](https://docs.winkpg.io/docs/api/PUT_api_identity_users_id_lock_lockoutEnd.md): `PUT /api/identity/users/{id}/lock/{lockoutEnd}`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [Gets the display name of a user by ID.](https://docs.winkpg.io/docs/api/GET_api_identity_users_id_name.md): `GET /api/identity/users/{id}/name`. Requires: AbpIdentity.Users, host scope.
- [Get user organization units](https://docs.winkpg.io/docs/api/GET_api_identity_users_id_organization-units.md): `GET /api/identity/users/{id}/organization-units`. Requires: AbpIdentity.Users, host scope.
- [Restores a deleted user by ID.](https://docs.winkpg.io/docs/api/POST_api_identity_users_id_restore.md): `POST /api/identity/users/{id}/restore`. Requires: AbpIdentity.Users, host scope.
- [Get user roles](https://docs.winkpg.io/docs/api/GET_api_identity_users_id_roles.md): `GET /api/identity/users/{id}/roles`. Requires: AbpIdentity.Users, host scope.
- [Update user roles](https://docs.winkpg.io/docs/api/PUT_api_identity_users_id_roles.md): `PUT /api/identity/users/{id}/roles`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [GetTwoFactorEnabled for User](https://docs.winkpg.io/docs/api/GET_api_identity_users_id_two-factor-enabled.md): `GET /api/identity/users/{id}/two-factor-enabled`. Requires: AbpIdentity.Users, host scope.
- [SetTwoFactorEnabled for User](https://docs.winkpg.io/docs/api/PUT_api_identity_users_id_two-factor_enabled.md): `PUT /api/identity/users/{id}/two-factor/{enabled}`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [Unlock user account](https://docs.winkpg.io/docs/api/PUT_api_identity_users_id_unlock.md): `PUT /api/identity/users/{id}/unlock`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.

## WalletCheckoutSnapshot

- [Returns the storefront-safe snapshot for the (provider, merchant) pair.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_checkout-snapshot_providerType_merchantId.md): `GET /api/payment-tokenization/checkout-snapshot/{providerType}/{merchantId}`. No permission required.

## WalletProviders

- [Get a list of WalletProviderRegistrations](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers.md): `GET /api/payment-tokenization/wallet-providers`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Create a WalletProviderRegistration](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers.md): `POST /api/payment-tokenization/wallet-providers`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Create, merchant scope.
- [Retrieves a continuation-based page of WalletProviderRegistrations.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_list_continuation.md): `POST /api/payment-tokenization/wallet-providers/list/continuation`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Counts the WalletProviderRegistrations that match a filter.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_list_continuation_count.md): `POST /api/payment-tokenization/wallet-providers/list/continuation/count`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Counts WalletProviderRegistrations for several filters at once.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_list_continuation_summary-counts.md): `POST /api/payment-tokenization/wallet-providers/list/continuation/summary-counts`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Gets wallet provider registration platform.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_platform_providerType.md): `GET /api/payment-tokenization/wallet-providers/platform/{providerType}`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Lists wallet provider registrations.](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_providers.md): `GET /api/payment-tokenization/wallet-providers/providers`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Delete a WalletProviderRegistration](https://docs.winkpg.io/docs/api/DELETE_api_payment-tokenization_wallet-providers_id.md): `DELETE /api/payment-tokenization/wallet-providers/{id}`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Delete, merchant scope.
- [Get a WalletProviderRegistration](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_id.md): `GET /api/payment-tokenization/wallet-providers/{id}`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Update a WalletProviderRegistration](https://docs.winkpg.io/docs/api/PUT_api_payment-tokenization_wallet-providers_id.md): `PUT /api/payment-tokenization/wallet-providers/{id}`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.
- [Check WalletProviderRegistration access](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_id_access.md): `GET /api/payment-tokenization/wallet-providers/{id}/access`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Unregisters wallet provider registration domains.](https://docs.winkpg.io/docs/api/DELETE_api_payment-tokenization_wallet-providers_id_domains.md): `DELETE /api/payment-tokenization/wallet-providers/{id}/domains`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.
- [Get a WalletProviderRegistration name by id](https://docs.winkpg.io/docs/api/GET_api_payment-tokenization_wallet-providers_id_name.md): `GET /api/payment-tokenization/wallet-providers/{id}/name`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Restore a deleted WalletProviderRegistration](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_id_restore.md): `POST /api/payment-tokenization/wallet-providers/{id}/restore`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.
- [Syncs from wallet provider registration.](https://docs.winkpg.io/docs/api/POST_api_payment-tokenization_wallet-providers_id_sync.md): `POST /api/payment-tokenization/wallet-providers/{id}/sync`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.

## See also

- [All documentation](https://docs.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
