# API reference

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

## Account

**Category:** Identity & Access

Sign-in account self-service: registration, password reset, email and phone confirmation, and profile management.

- [Confirm email address](https://devportal-simpay-sbx.winkpg.io/docs/api/accountConfirmEmail.md): `POST /api/account/confirm-email`. No permission required.
- [Confirm phone number](https://devportal-simpay-sbx.winkpg.io/docs/api/accountConfirmPhoneNumber.md): `POST /api/account/confirm-phone-number`. No permission required.
- [Get account confirmation state](https://devportal-simpay-sbx.winkpg.io/docs/api/accountGetConfirmationState.md): `GET /api/account/confirmation-state`. No permission required.
- [Set profile picture](https://devportal-simpay-sbx.winkpg.io/docs/api/accountSetProfilePicture.md): `POST /api/account/profile-picture`. No permission required.
- [GetProfilePictureFile for Account](https://devportal-simpay-sbx.winkpg.io/docs/api/accountGetProfilePictureFile.md): `GET /api/account/profile-picture-file/{id}`. No permission required.
- [Get profile picture](https://devportal-simpay-sbx.winkpg.io/docs/api/accountGetProfilePicture.md): `GET /api/account/profile-picture/{id}`. No permission required.
- [Recaptcha for Account](https://devportal-simpay-sbx.winkpg.io/docs/api/accountRecaptcha.md): `GET /api/account/recaptcha-validate`. No permission required.
- [Register new account](https://devportal-simpay-sbx.winkpg.io/docs/api/accountRegister.md): `POST /api/account/register`. No permission required.
- [Reset password](https://devportal-simpay-sbx.winkpg.io/docs/api/accountResetPassword.md): `POST /api/account/reset-password`. No permission required.
- [Get security logs](https://devportal-simpay-sbx.winkpg.io/docs/api/accountGetSecurityLogList.md): `GET /api/account/security-logs`. No permission required.
- [Send email confirmation token](https://devportal-simpay-sbx.winkpg.io/docs/api/accountSendEmailConfirmationToken.md): `POST /api/account/send-email-confirmation-token`. No permission required.
- [Send password reset code](https://devportal-simpay-sbx.winkpg.io/docs/api/accountSendPasswordResetCode.md): `POST /api/account/send-password-reset-code`. No permission required.
- [Send phone confirmation token](https://devportal-simpay-sbx.winkpg.io/docs/api/accountSendPhoneNumberConfirmationToken.md): `POST /api/account/send-phone-number-confirmation-token`. No permission required.
- [Verify email confirmation token](https://devportal-simpay-sbx.winkpg.io/docs/api/accountVerifyEmailConfirmationToken.md): `POST /api/account/verify-email-confirmation-token`. No permission required.
- [Verify password reset token](https://devportal-simpay-sbx.winkpg.io/docs/api/accountVerifyPasswordResetToken.md): `POST /api/account/verify-password-reset-token`. No permission required.
- [SendPasswordResetCodeWithUsername for Account](https://devportal-simpay-sbx.winkpg.io/docs/api/accountSendPasswordResetCodeWithUsername.md): `POST /api/app/account/send-password-reset-code-with-username`. No permission required.
- [Get user profile](https://devportal-simpay-sbx.winkpg.io/docs/api/profileGet.md): `GET /api/account/my-profile`. No permission required.
- [Update user profile](https://devportal-simpay-sbx.winkpg.io/docs/api/profileUpdate.md): `PUT /api/account/my-profile`. No permission required.
- [Change password](https://devportal-simpay-sbx.winkpg.io/docs/api/profileChangePassword.md): `POST /api/account/my-profile/change-password`. No permission required.
- [SetTwoFactorEnabled for Profile](https://devportal-simpay-sbx.winkpg.io/docs/api/profileSetTwoFactorEnabled.md): `POST /api/account/my-profile/set-two-factor-enabled`. No permission required.
- [GetTimezones for Profile](https://devportal-simpay-sbx.winkpg.io/docs/api/profileGetTimezones.md): `GET /api/account/my-profile/timezones`. No permission required.
- [GetTwoFactorEnabled for Profile](https://devportal-simpay-sbx.winkpg.io/docs/api/profileGetTwoFactorEnabled.md): `GET /api/account/my-profile/two-factor-enabled`. No permission required.
- [/api/app/wink-pg-profile](https://devportal-simpay-sbx.winkpg.io/docs/api/winkPgProfileGet.md): `GET /api/app/wink-pg-profile`. No permission required.
- [/api/app/wink-pg-profile](https://devportal-simpay-sbx.winkpg.io/docs/api/winkPgProfileUpdate.md): `PUT /api/app/wink-pg-profile`. No permission required.
- [/api/app/wink-pg-profile/can-enable-two-factor](https://devportal-simpay-sbx.winkpg.io/docs/api/winkPgProfileCanEnableTwoFactor.md): `POST /api/app/wink-pg-profile/can-enable-two-factor`. No permission required.
- [/api/app/wink-pg-profile/change-password](https://devportal-simpay-sbx.winkpg.io/docs/api/winkPgProfileChangePassword.md): `POST /api/app/wink-pg-profile/change-password`. No permission required.
- [/api/app/wink-pg-profile/set-two-factor-enabled](https://devportal-simpay-sbx.winkpg.io/docs/api/winkPgProfileSetTwoFactorEnabled.md): `POST /api/app/wink-pg-profile/set-two-factor-enabled`. No permission required.
- [/api/app/wink-pg-profile/timezones](https://devportal-simpay-sbx.winkpg.io/docs/api/winkPgProfileGetTimezones.md): `GET /api/app/wink-pg-profile/timezones`. No permission required.
- [/api/app/wink-pg-profile/two-factor-enabled](https://devportal-simpay-sbx.winkpg.io/docs/api/winkPgProfileGetTwoFactorEnabled.md): `GET /api/app/wink-pg-profile/two-factor-enabled`. No permission required.

## Accounting OAuth

**Category:** Platform Configuration

Connecting a merchant to an accounting provider over OAuth, and completing the provider's callback.

- [OAuth redirect target.](https://devportal-simpay-sbx.winkpg.io/docs/api/accountingOAuthCallback.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://devportal-simpay-sbx.winkpg.io/docs/api/accountingOAuthConnect.md): `POST /api/accounting/oauth/connect`. No permission required.

## Announcements

**Category:** Messaging & Notifications

System announcements and banner management.

- [Get a list of Announcements](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetList.md): `GET /api/announcements`. Requires: Announcements.Management, merchant scope.
- [Create an Announcement](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsCreate.md): `POST /api/announcements`. Requires: Announcements.Management, Announcements.Management.Create, merchant scope.
- [Disables an announcement.](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsDisable.md): `POST /api/announcements/disable-async`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Duplicates an existing announcement with a new title.](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsDuplicate.md): `POST /api/announcements/duplicate-async`. Requires: Announcements.Management, Announcements.Management.Create, merchant scope.
- [Enables an announcement.](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsEnable.md): `POST /api/announcements/enable-async`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Get a list of AnnouncementTemplates](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetListTemplates.md): `GET /api/announcements/templates`. Requires: Announcements.Management, merchant scope.
- [Create an AnnouncementTemplate](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsCreateTemplates.md): `POST /api/announcements/templates`. Requires: Announcements.Management, Announcements.Management.Create, merchant scope.
- [Lists every template as an id and a name.](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetPickerList.md): `GET /api/announcements/templates/picker-list`. Requires: Announcements.Management, merchant scope.
- [Delete an AnnouncementTemplate](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsDeleteTemplatesId.md): `DELETE /api/announcements/templates/{id}`. Requires: Announcements.Management, Announcements.Management.Delete, merchant scope.
- [Get an AnnouncementTemplate](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetTemplatesId.md): `GET /api/announcements/templates/{id}`. Requires: Announcements.Management, merchant scope.
- [Update an AnnouncementTemplate](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsUpdateTemplatesId.md): `PUT /api/announcements/templates/{id}`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Check AnnouncementTemplate access](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsHasEntityAccessTemplatesId.md): `GET /api/announcements/templates/{id}/access`. Requires: Announcements.Management, merchant scope.
- [Get an AnnouncementTemplate name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetNameTemplatesId.md): `GET /api/announcements/templates/{id}/name`. Requires: Announcements.Management, merchant scope.
- [Restore a deleted AnnouncementTemplate](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsRestoreDeletedItemTemplatesId.md): `POST /api/announcements/templates/{id}/restore`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Delete an Announcement](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsDeleteId.md): `DELETE /api/announcements/{id}`. Requires: Announcements.Management, Announcements.Management.Delete, merchant scope.
- [Get an Announcement](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetId.md): `GET /api/announcements/{id}`. Requires: Announcements.Management, merchant scope.
- [Partially update an Announcement](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsMergePatchUpdate.md): `PATCH /api/announcements/{id}`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Update an Announcement](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsUpdateId.md): `PUT /api/announcements/{id}`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Check Announcement access](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsHasEntityAccessId.md): `GET /api/announcements/{id}/access`. Requires: Announcements.Management, merchant scope.
- [Gets engagement statistics for a specific announcement.](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetEngagementStats.md): `GET /api/announcements/{id}/engagement-stats`. Requires: Announcements.Management, merchant scope.
- [Get an Announcement name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsGetNameId.md): `GET /api/announcements/{id}/name`. Requires: Announcements.Management, merchant scope.
- [Restore a deleted Announcement](https://devportal-simpay-sbx.winkpg.io/docs/api/announcementsRestoreDeletedItemId.md): `POST /api/announcements/{id}/restore`. Requires: Announcements.Management, Announcements.Management.Update, merchant scope.
- [Gets announcements for the current user, ordered by priority and date.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementGetMyAnnouncements.md): `GET /api/announcements/user`. Requires: Announcements.View, merchant scope.
- [Dismisses all announcements for the current user.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementDismissAll.md): `POST /api/announcements/user/dismiss-all`. Requires: Announcements.View, merchant scope.
- [Marks multiple announcements as read for the current user.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementMarkManyAsRead.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.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementGetPendingPopups.md): `GET /api/announcements/user/pending-popups`. Requires: Announcements.View, merchant scope.
- [Gets the count of unread announcements for the current user.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementGetUnreadCount.md): `GET /api/announcements/user/unread-count`. Requires: Announcements.View, merchant scope.
- [Dismisses an announcement for the current user.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementDismiss.md): `POST /api/announcements/user/{announcementId}/dismiss`. Requires: Announcements.View, merchant scope.
- [Marks an announcement as read for the current user.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementMarkAsRead.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.](https://devportal-simpay-sbx.winkpg.io/docs/api/userAnnouncementRecordPopupShown.md): `POST /api/announcements/user/{announcementId}/record-popup-shown`. Requires: Announcements.View, merchant scope.

## API Keys

**Category:** Identity & Access

API key lifecycle for programmatic access: issuing a key, revealing it once, rotating it, and deactivating or deleting it.

- [List API keys](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysGetList.md): `GET /api/api-keys`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Create API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysCreate.md): `POST /api/api-keys`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Gets the approximate total count of API keys based on the provided input.](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysGetApproximateTotalCount.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://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysGetContinuationList.md): `GET /api/api-keys/continuation-list`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [CreateAndReveal for ApiKeys](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysCreateAndReveal.md): `POST /api/api-keys/reveal`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Delete API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysDelete.md): `DELETE /api/api-keys/{id}`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Get API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysGet.md): `GET /api/api-keys/{id}`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Update API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysUpdate.md): `PUT /api/api-keys/{id}`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Get an API key's details](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysGetDetail.md): `GET /api/api-keys/{id}/detail`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Checks if the caller may access the API key.](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysHasEntityAccess.md): `GET /api/api-keys/{id}/has-access`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Gets the name of the API key by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysGetName.md): `GET /api/api-keys/{id}/name`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Reinstate a suspended API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysReinstate.md): `POST /api/api-keys/{id}/reinstate`. Requires: ApiKeyAuthorization.ApiKeys, ApiKeyAuthorization.ApiKeys.Suspend, merchant scope.
- [Restores a deleted API key item by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysRestoreDeletedItem.md): `POST /api/api-keys/{id}/restore`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Revoke an API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysRevoke.md): `POST /api/api-keys/{id}/revoke`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Rotate an API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysRotate.md): `POST /api/api-keys/{id}/rotate`. Requires: ApiKeyAuthorization.ApiKeys, merchant scope.
- [Suspend an API key](https://devportal-simpay-sbx.winkpg.io/docs/api/apiKeysSuspend.md): `POST /api/api-keys/{id}/suspend`. Requires: ApiKeyAuthorization.ApiKeys, ApiKeyAuthorization.ApiKeys.Suspend, merchant scope.
- [Create and reveal an API key for a merchant user.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantUserApiKeysCreateForMerchantUser.md): `POST /api/api-keys/for-user`. Requires: ApiKeyAuthorization.ApiKeys.CreateForUser, merchant scope.

## Audit Log

**Category:** Reporting & Operations

The platform audit trail: who changed what, when, and from where, paged with continuation tokens.

- [Counts the entities matching `input`.](https://devportal-simpay-sbx.winkpg.io/docs/api/auditLogContinuationGetApproximateTotalCount.md): `GET /api/app/audit-log-continuation/approximate-total-count`. Requires: AuditLogging.AuditLogs, merchant scope.
- [/api/app/audit-log-continuation/continuation-list](https://devportal-simpay-sbx.winkpg.io/docs/api/auditLogContinuationGetContinuationList.md): `GET /api/app/audit-log-continuation/continuation-list`. Requires: AuditLogging.AuditLogs, merchant scope.
- [/api/app/audit-log-continuation/summary-counts](https://devportal-simpay-sbx.winkpg.io/docs/api/auditLogContinuationGetSummaryCounts.md): `GET /api/app/audit-log-continuation/summary-counts`. Requires: AuditLogging.AuditLogs, merchant scope.
- [/api/app/audit-log-continuation/{id}/ensure-entity-access](https://devportal-simpay-sbx.winkpg.io/docs/api/auditLogContinuationEnsureEntityAccess.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://devportal-simpay-sbx.winkpg.io/docs/api/auditLogContinuationTryEnsureEntityAccess.md): `POST /api/app/audit-log-continuation/{id}/try-ensure-entity-access`. Requires: AuditLogging.AuditLogs, merchant scope.

## Campaigns

**Category:** Payments

Group payment links into a campaign with one status, one schedule and one report.

- [Get a list of Campaigns](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsGetList.md): `GET /api/campaigns`. Requires: Campaigns.Campaigns, merchant scope.
- [Create a Campaign](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsCreate.md): `POST /api/campaigns`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.Create, merchant scope.
- [Retrieves a continuation-based page of Campaigns.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsGetContinuationList.md): `POST /api/campaigns/list/continuation`. Requires: Campaigns.Campaigns, merchant scope.
- [Counts the Campaigns that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsGetApproximateTotalCount.md): `POST /api/campaigns/list/continuation/count`. Requires: Campaigns.Campaigns, merchant scope.
- [Counts Campaigns for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsGetSummaryCounts.md): `POST /api/campaigns/list/continuation/summary-counts`. Requires: Campaigns.Campaigns, merchant scope.
- [Delete a Campaign](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsDelete.md): `DELETE /api/campaigns/{id}`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.Delete, merchant scope.
- [Get a Campaign](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsGet.md): `GET /api/campaigns/{id}`. Requires: Campaigns.Campaigns, merchant scope.
- [Update a Campaign](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsUpdate.md): `PUT /api/campaigns/{id}`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.Update, merchant scope.
- [Check Campaign access](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsHasEntityAccess.md): `GET /api/campaigns/{id}/access`. Requires: Campaigns.Campaigns, merchant scope.
- [Moves a draft campaign to active.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsActivate.md): `POST /api/campaigns/{id}/activate`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.ManageStatus, merchant scope.
- [Retires a campaign from the working set.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsArchive.md): `POST /api/campaigns/{id}/archive`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.ManageStatus, merchant scope.
- [Creates a new draft campaign from an existing one, for running the same campaign again.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsClone.md): `POST /api/campaigns/{id}/clone`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.Create, merchant scope.
- [Ends a running or paused campaign.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsEnd.md): `POST /api/campaigns/{id}/end`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.ManageStatus, merchant scope.
- [Get a Campaign name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsGetName.md): `GET /api/campaigns/{id}/name`. Requires: Campaigns.Campaigns, merchant scope.
- [Suspends a running campaign. No member link's own status is touched.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsPause.md): `POST /api/campaigns/{id}/pause`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.ManageStatus, merchant scope.
- [Reads a campaign's public progress.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignProgressGetProgress.md): `GET /api/campaigns/{id}/progress`. No permission required.
- [Restore a deleted Campaign](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsRestoreDeletedItem.md): `POST /api/campaigns/{id}/restore`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.Update, merchant scope.
- [Returns a paused campaign to active.](https://devportal-simpay-sbx.winkpg.io/docs/api/campaignsResume.md): `POST /api/campaigns/{id}/resume`. Requires: Campaigns.Campaigns, Campaigns.Campaigns.ManageStatus, merchant scope.

## Contract Plans

**Category:** Customers & Contracts

Reusable plans that recurring contracts subscribe to for their price.

- [Get a list of ContractPlans](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansGetList.md): `GET /api/contract-plans`. Requires: Customers.ContractPlans, merchant scope.
- [Create a ContractPlan](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansCreate.md): `POST /api/contract-plans`. Requires: Customers.ContractPlans, Customers.ContractPlans.Create, merchant scope.
- [Retrieves a continuation-based page of ContractPlans.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansGetContinuationList.md): `POST /api/contract-plans/list/continuation`. Requires: Customers.ContractPlans, merchant scope.
- [Counts the ContractPlans that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansGetApproximateTotalCount.md): `POST /api/contract-plans/list/continuation/count`. Requires: Customers.ContractPlans, merchant scope.
- [Counts ContractPlans for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansGetSummaryCounts.md): `POST /api/contract-plans/list/continuation/summary-counts`. Requires: Customers.ContractPlans, merchant scope.
- [Lists the active plans the caller may subscribe a contract to, with today's price on each.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansGetLookupList.md): `GET /api/contract-plans/lookup`. Requires: Customers.ContractPlans, merchant scope.
- [Delete a ContractPlan](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansDelete.md): `DELETE /api/contract-plans/{id}`. Requires: Customers.ContractPlans, Customers.ContractPlans.Delete, merchant scope.
- [Get a ContractPlan](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansGet.md): `GET /api/contract-plans/{id}`. Requires: Customers.ContractPlans, merchant scope.
- [Update a ContractPlan](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansUpdate.md): `PUT /api/contract-plans/{id}`. Requires: Customers.ContractPlans, Customers.ContractPlans.Update, merchant scope.
- [Check ContractPlan access](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansHasEntityAccess.md): `GET /api/contract-plans/{id}/access`. Requires: Customers.ContractPlans, merchant scope.
- [Get a ContractPlan name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansGetName.md): `GET /api/contract-plans/{id}/name`. Requires: Customers.ContractPlans, merchant scope.
- [Records a new price on a plan and states when it starts applying to existing subscribers.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansChangePrice.md): `POST /api/contract-plans/{id}/prices`. Requires: Customers.ContractPlans, Customers.ContractPlans.ChangePrice, merchant scope.
- [Restore a deleted ContractPlan](https://devportal-simpay-sbx.winkpg.io/docs/api/contractPlansRestoreDeletedItem.md): `POST /api/contract-plans/{id}/restore`. Requires: Customers.ContractPlans, Customers.ContractPlans.Delete, merchant scope.

## Contract Revision

**Category:** Platform Configuration

The API contract revision this instance serves, so a client built against a newer contract can tell an older instance from a missing feature.

- [/api/platform/contract](https://devportal-simpay-sbx.winkpg.io/docs/api/contractRevisionGet.md): `GET /api/platform/contract`. No permission required.

## Contracts

**Category:** Customers & Contracts

Customer contract and billing agreement management.

- [List contracts](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsGetList.md): `GET /api/contracts`. Requires: Customers.Contracts, merchant scope.
- [Create contract](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsCreate.md): `POST /api/contracts`. Requires: Customers.Contracts, Customers.Contracts.Create, merchant scope.
- [Retrieves a continuation-based page of Contracts.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsGetContinuationList.md): `POST /api/contracts/list/continuation`. Requires: Customers.Contracts, merchant scope.
- [Counts the Contracts that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsGetApproximateTotalCount.md): `POST /api/contracts/list/continuation/count`. Requires: Customers.Contracts, merchant scope.
- [Counts Contracts for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsGetSummaryCounts.md): `POST /api/contracts/list/continuation/summary-counts`. Requires: Customers.Contracts, merchant scope.
- [Delete contract](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsDelete.md): `DELETE /api/contracts/{id}`. Requires: Customers.Contracts, Customers.Contracts.Delete, merchant scope.
- [Get contract by ID](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsGet.md): `GET /api/contracts/{id}`. Requires: Customers.Contracts, merchant scope.
- [Update contract](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsUpdate.md): `PUT /api/contracts/{id}`. Requires: Customers.Contracts, Customers.Contracts.Update, merchant scope.
- [Check contract access](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsHasEntityAccess.md): `GET /api/contracts/{id}/access`. Requires: Customers.Contracts, merchant scope.
- [Get contract name](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsGetName.md): `GET /api/contracts/{id}/name`. Requires: Customers.Contracts, merchant scope.
- [Pauses an active contract.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsPause.md): `POST /api/contracts/{id}/pause`. Requires: Customers.Contracts, Customers.Contracts.Update, merchant scope.
- [Restore deleted contract](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsRestoreDeletedItem.md): `POST /api/contracts/{id}/restore`. Requires: Customers.Contracts, Customers.Contracts.Delete, merchant scope.
- [Resumes a paused contract.](https://devportal-simpay-sbx.winkpg.io/docs/api/contractsResume.md): `POST /api/contracts/{id}/resume`. Requires: Customers.Contracts, Customers.Contracts.Update, merchant scope.

## Customers

**Category:** Customers & Contracts

Customer profile management, payment methods, and contact details.

- [List customers](https://devportal-simpay-sbx.winkpg.io/docs/api/customersGetList.md): `GET /api/customers`. Requires: Customers.Customers, merchant scope.
- [Create customer](https://devportal-simpay-sbx.winkpg.io/docs/api/customersCreate.md): `POST /api/customers`. Requires: Customers.Customers, Customers.Customers.Create, merchant scope.
- [Adds a new stored payment method to a customer's collection and persists it.](https://devportal-simpay-sbx.winkpg.io/docs/api/customersAddStoredPaymentMethod.md): `POST /api/customers/add-stored-payment-method-async`. Requires: Customers.Customers, Customers.Customers.Create, merchant scope.
- [Soft-deletes a stored payment method from a customer.](https://devportal-simpay-sbx.winkpg.io/docs/api/customersDeleteStoredPaymentMethod.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://devportal-simpay-sbx.winkpg.io/docs/api/customersGetContinuationList.md): `POST /api/customers/list/continuation`. Requires: Customers.Customers, merchant scope.
- [Counts the Customers that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/customersGetApproximateTotalCount.md): `POST /api/customers/list/continuation/count`. Requires: Customers.Customers, merchant scope.
- [Counts Customers for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/customersGetSummaryCounts.md): `POST /api/customers/list/continuation/summary-counts`. Requires: Customers.Customers, merchant scope.
- [Delete customer](https://devportal-simpay-sbx.winkpg.io/docs/api/customersDelete.md): `DELETE /api/customers/{id}`. Requires: Customers.Customers, Customers.Customers.Delete, merchant scope.
- [Get customer by ID](https://devportal-simpay-sbx.winkpg.io/docs/api/customersGet.md): `GET /api/customers/{id}`. Requires: Customers.Customers, merchant scope.
- [Update customer](https://devportal-simpay-sbx.winkpg.io/docs/api/customersUpdate.md): `PUT /api/customers/{id}`. Requires: Customers.Customers, Customers.Customers.Update, merchant scope.
- [Check customer access](https://devportal-simpay-sbx.winkpg.io/docs/api/customersHasEntityAccess.md): `GET /api/customers/{id}/access`. Requires: Customers.Customers, merchant scope.
- [Get customer name](https://devportal-simpay-sbx.winkpg.io/docs/api/customersGetName.md): `GET /api/customers/{id}/name`. Requires: Customers.Customers, merchant scope.
- [Restore deleted customer](https://devportal-simpay-sbx.winkpg.io/docs/api/customersRestoreDeletedItem.md): `POST /api/customers/{id}/restore`. Requires: Customers.Customers, merchant scope.

## Developer Portal

**Category:** Identity & Access

Back-office management of Developer Portal access: the accounts that grant it and the invitations that offer it. Every operation is scoped to the acting merchant.

- [Create a DeveloperAccount](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalCreate.md): `POST /api/developer-portal/accounts`. Requires: DeveloperPortal.Accounts, DeveloperPortal.Accounts.Create, merchant scope.
- [Lists the users who can be granted portal access for the current merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetAssignableUsers.md): `GET /api/developer-portal/accounts/assignable-users`. Requires: DeveloperPortal.Accounts, DeveloperPortal.Accounts.Create, merchant scope.
- [Retrieves a continuation-based page of DeveloperAccounts.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetContinuationListAccounts.md): `POST /api/developer-portal/accounts/list/continuation`. Requires: DeveloperPortal.Accounts, merchant scope.
- [Counts the DeveloperAccounts that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetApproximateTotalCountAccountsListContinuation.md): `POST /api/developer-portal/accounts/list/continuation/count`. Requires: DeveloperPortal.Accounts, merchant scope.
- [Counts DeveloperAccounts for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetSummaryCountsAccountsListContinuation.md): `POST /api/developer-portal/accounts/list/continuation/summary-counts`. Requires: DeveloperPortal.Accounts, merchant scope.
- [Delete a DeveloperAccount](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalDelete.md): `DELETE /api/developer-portal/accounts/{id}`. Requires: DeveloperPortal.Accounts, DeveloperPortal.Accounts.Delete, merchant scope.
- [Get a DeveloperAccount](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetAccountsId.md): `GET /api/developer-portal/accounts/{id}`. Requires: DeveloperPortal.Accounts, merchant scope.
- [Update a DeveloperAccount](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalUpdate.md): `PUT /api/developer-portal/accounts/{id}`. Requires: DeveloperPortal.Accounts, DeveloperPortal.Accounts.Update, merchant scope.
- [Check DeveloperAccount access](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalHasEntityAccess.md): `GET /api/developer-portal/accounts/{id}/access`. Requires: DeveloperPortal.Accounts, merchant scope.
- [Get a DeveloperAccount name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetName.md): `GET /api/developer-portal/accounts/{id}/name`. Requires: DeveloperPortal.Accounts, merchant scope.
- [Restore a deleted DeveloperAccount](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalRestoreDeletedItem.md): `POST /api/developer-portal/accounts/{id}/restore`. Requires: DeveloperPortal.Accounts, DeveloperPortal.Accounts.Create, merchant scope.
- [Issues an invitation and emails its redemption link to the invited party.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalIssue.md): `POST /api/developer-portal/invitations`. Requires: DeveloperPortal.Invitations, DeveloperPortal.Invitations.Create, merchant scope.
- [Lists the users the caller may invite for the acting merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetInvitableUsers.md): `GET /api/developer-portal/invitations/invitable-users`. Requires: DeveloperPortal.Invitations, DeveloperPortal.Invitations.Create, merchant scope.
- [Retrieves a continuation-based page of the acting merchant's invitations.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetContinuationListInvitations.md): `POST /api/developer-portal/invitations/list/continuation`. Requires: DeveloperPortal.Invitations, merchant scope.
- [Counts the invitations that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetApproximateTotalCountInvitationsListContinuation.md): `POST /api/developer-portal/invitations/list/continuation/count`. Requires: DeveloperPortal.Invitations, merchant scope.
- [Counts invitations for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetSummaryCountsInvitationsListContinuation.md): `POST /api/developer-portal/invitations/list/continuation/summary-counts`. Requires: DeveloperPortal.Invitations, merchant scope.
- [Reads one of the acting merchant's invitations.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalGetInvitationsId.md): `GET /api/developer-portal/invitations/{id}`. Requires: DeveloperPortal.Invitations, merchant scope.
- [Withdraws a pending invitation, so its link stops working.](https://devportal-simpay-sbx.winkpg.io/docs/api/developerPortalRevoke.md): `POST /api/developer-portal/invitations/{id}/revoke`. Requires: DeveloperPortal.Invitations, DeveloperPortal.Invitations.Delete, merchant scope.

## Health Checks

**Category:** Reporting & Operations

Platform health: the overall status, and the state of the individual components behind it.

- [Returns overall health status.](https://devportal-simpay-sbx.winkpg.io/docs/api/healthCheckGet.md): `GET /api/health`. No permission required.
- [Returns health checks for a specific category.](https://devportal-simpay-sbx.winkpg.io/docs/api/healthCheckGetByCategory.md): `GET /api/health/category/{category}`. Requires: HealthChecks.HealthChecks, merchant scope.
- [Returns health status for a specific component by name.](https://devportal-simpay-sbx.winkpg.io/docs/api/healthCheckGetByComponent.md): `GET /api/health/components/{name}`. Requires: HealthChecks.HealthChecks, merchant scope.
- [Returns health checks grouped by category with per-group aggregate status.](https://devportal-simpay-sbx.winkpg.io/docs/api/healthCheckGetGrouped.md): `GET /api/health/groups`. Requires: HealthChecks.HealthChecks, merchant scope.

## Hosted Payment Pages

**Category:** Payments

Hosted payment pages: the checkout pages WinkPG hosts on a merchant's behalf, their branding and field configuration, and the sessions a shopper is sent to.

- [Records a single client interaction beacon.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppInteractionPostInteraction.md): `POST /api/hosted-payment-page/interactions`. No permission required.
- [List hosted payment pages](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesGetList.md): `GET /api/hostedpaymentpages`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Create hosted payment page](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesCreate.md): `POST /api/hostedpaymentpages`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Create, merchant scope.
- [Creates a ready-to-use Save Card page for storing a card on file.](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesCreateSaveCardCapture.md): `POST /api/hostedpaymentpages/create-save-card-capture-async`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Create, merchant scope.
- [Uploads a banner or product image.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppImageUploadImage.md): `POST /api/hostedpaymentpages/images/upload`. Requires: HostedPaymentPage.HostedPaymentPages.Update, merchant scope.
- [Retrieves a continuation-based page of HostedPaymentPages.](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesGetContinuationList.md): `POST /api/hostedpaymentpages/list/continuation`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Counts the HostedPaymentPages that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesGetApproximateTotalCount.md): `POST /api/hostedpaymentpages/list/continuation/count`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Counts HostedPaymentPages for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesGetSummaryCounts.md): `POST /api/hostedpaymentpages/list/continuation/summary-counts`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Locks the page against deletion and against changes to its billing-critical fields.](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesLock.md): `POST /api/hostedpaymentpages/lock-async`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Lock, merchant scope.
- [Lists HPP sessions for a specific hosted payment page.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionGetList.md): `GET /api/hostedpaymentpages/sessions`. Requires: HostedPaymentPage.HppSessions, merchant scope.
- [Creates a new HPP session with pre-populated field data.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionCreate.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://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionGetCloneData.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/clone-data`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Lists the completions of one reusable payment link: one row per payer who arrived on it.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionGetCompletions.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/completions`. Requires: HostedPaymentPage.HppSessions, merchant scope.
- [Returns the Level 3 commercial-card payload stored on a session.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionGetLevel3Data.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/level3-data`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Pauses a payment link.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionPause.md): `POST /api/hostedpaymentpages/sessions/{sessionId}/pause`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Returns the canonical payment-link URL for a session.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionGetPaymentLinkUrl.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://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionGetQrCode.md): `GET /api/hostedpaymentpages/sessions/{sessionId}/qrcode.png`. Requires: HostedPaymentPage.HppSessions, merchant scope.
- [Recomputes a reusable link's completion count from its own completions.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionReconcileCompletions.md): `POST /api/hostedpaymentpages/sessions/{sessionId}/reconcile-completions`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Resumes a paused payment link.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionResume.md): `POST /api/hostedpaymentpages/sessions/{sessionId}/resume`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Revokes an active HPP session so it can no longer be used.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionRevoke.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://devportal-simpay-sbx.winkpg.io/docs/api/hppSessionSendLink.md): `POST /api/hostedpaymentpages/sessions/{sessionId}/send-link`. Requires: HostedPaymentPage.HppSessions, HostedPaymentPage.HppSessions.Create, merchant scope.
- [Removes the lock from a page.](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesUnlock.md): `POST /api/hostedpaymentpages/unlock-async`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Unlock, merchant scope.
- [Delete hosted payment page](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesDelete.md): `DELETE /api/hostedpaymentpages/{id}`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Delete, merchant scope.
- [Get hosted payment page](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesGet.md): `GET /api/hostedpaymentpages/{id}`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Update hosted payment page](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesUpdate.md): `PUT /api/hostedpaymentpages/{id}`. Requires: HostedPaymentPage.HostedPaymentPages, HostedPaymentPage.HostedPaymentPages.Update, merchant scope.
- [Check page access](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesHasEntityAccess.md): `GET /api/hostedpaymentpages/{id}/access`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Get page name](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesGetName.md): `GET /api/hostedpaymentpages/{id}/name`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Restore deleted page](https://devportal-simpay-sbx.winkpg.io/docs/api/hostedPaymentPagesRestoreDeletedItem.md): `POST /api/hostedpaymentpages/{id}/restore`. Requires: HostedPaymentPage.HostedPaymentPages, merchant scope.
- [Accepts a single CSP violation report.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppCspReportPostReport.md): `POST /api/hpp/csp-report`. No permission required.
- [Publishes the release this host serves.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSdkAssetGetManifest.md): `GET /sdk/core/manifest.json`. No permission required.
- [Serves one published artifact.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSdkAssetGetAsset.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://devportal-simpay-sbx.winkpg.io/docs/api/hppSdkSampleGetSample.md): `GET /sdk/sample/{product}.zip`. No permission required.
- [Serves the shim for the given SDK product.](https://devportal-simpay-sbx.winkpg.io/docs/api/hppSdkShimGetShim.md): `GET /sdk/v1/{product}.js`. No permission required.

## Inbound Sms Message

**Category:** Messaging & Notifications

Operator access to the inbound SMS log: what recipients replied, and honoring a free-text opt-out that no automated keyword rule interprets.

- [Lists inbound-SMS rows for the caller's scope, newest first.](https://devportal-simpay-sbx.winkpg.io/docs/api/inboundSmsMessageGetList.md): `GET /api/twilio/inbound-messages`. Requires: Twilio.InboundMessages.View, merchant scope.

## Invoicing

**Category:** Billing & Invoicing

Invoice generation, tracking, and payment reconciliation.

- [Invoices: Exports the filtered invoice list as CSV.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceExportExportToCsv.md): `GET /api/invoicing/exports/invoices/csv`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Exports the filtered invoice list as an Excel workbook.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceExportExportToExcel.md): `GET /api/invoicing/exports/invoices/excel`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Retrieves a continuation-token paged, filtered list of invoices.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCrudGetContinuationList.md): `GET /api/invoicing/invoices`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Creates a new draft invoice.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCrudCreate.md): `POST /api/invoicing/invoices`. Requires: Invoicing.Invoices, Invoicing.Invoices.Create, merchant scope.
- [Invoices: Looks up a line's sales-tax rate from the merchant biller's tax provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTaxRateLookupLookup.md): `POST /api/invoicing/invoices/tax-rate-lookup`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Deletes a draft invoice by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCrudDelete.md): `DELETE /api/invoicing/invoices/{id}`. Requires: Invoicing.Invoices, Invoicing.Invoices.Delete, merchant scope.
- [Invoices: Retrieves a single invoice by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCrudGet.md): `GET /api/invoicing/invoices/{id}`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Updates an existing draft invoice by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCrudUpdate.md): `PUT /api/invoicing/invoices/{id}`. Requires: Invoicing.Invoices, Invoicing.Invoices.Update, merchant scope.
- [Invoices: Cancels a draft invoice.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleCancel.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleClone.md): `POST /api/invoicing/invoices/{id}/clone`. Requires: Invoicing.Invoices, Invoicing.Invoices.Create, merchant scope.
- [Invoices: Closes an invoice (write-off).](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleClose.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleIssue.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleMarkAsSent.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleMarkAsViewed.md): `POST /api/invoicing/invoices/{id}/mark-as-viewed`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Appends an internal note to an invoice.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleAddNote.md): `POST /api/invoicing/invoices/{id}/notes`. Requires: Invoicing.Invoices, Invoicing.Invoices.Update, merchant scope.
- [Invoices: Reads the invoice's pay-by-link state.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleGetPaymentLink.md): `GET /api/invoicing/invoices/{id}/payment-link`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Reissues the payment link without emailing the recipient.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleReissuePaymentLink.md): `POST /api/invoicing/invoices/{id}/payment-link/reissue`. Requires: Invoicing.Invoices, Invoicing.Invoices.Send, merchant scope.
- [Invoices: Downloads an invoice's PDF document.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePdfDownload.md): `GET /api/invoicing/invoices/{id}/pdf`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Retrieves the metadata of an invoice's PDF document.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePdfGetMetadata.md): `GET /api/invoicing/invoices/{id}/pdf/metadata`. Requires: Invoicing.Invoices, merchant scope.
- [Invoices: Records an offline or manual payment against an invoice.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleRecordPayment.md): `POST /api/invoicing/invoices/{id}/record-payment`. Requires: Invoicing.Invoices, Invoicing.Invoices.RecordPayment, merchant scope.
- [Invoices: Refunds the payments collected against an invoice.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleRefund.md): `POST /api/invoicing/invoices/{id}/refund`. Requires: Invoicing.Invoices, Invoicing.Invoices.Refund, merchant scope.
- [Invoices: Runs the full send workflow.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceLifecycleSend.md): `POST /api/invoicing/invoices/{id}/send`. Requires: Invoicing.Invoices, Invoicing.Invoices.Send, merchant scope.
- [Credit Notes: Retrieves a paged list of credit notes.](https://devportal-simpay-sbx.winkpg.io/docs/api/creditNoteGetList.md): `GET /api/invoicing/credit-notes`. Requires: Invoicing.CreditNotes, merchant scope.
- [Credit Notes: Creates a new credit note.](https://devportal-simpay-sbx.winkpg.io/docs/api/creditNoteCreate.md): `POST /api/invoicing/credit-notes`. Requires: Invoicing.CreditNotes, Invoicing.CreditNotes.Create, merchant scope.
- [Credit Notes: Deletes a credit note by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/creditNoteDelete.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://devportal-simpay-sbx.winkpg.io/docs/api/creditNoteGet.md): `GET /api/invoicing/credit-notes/{id}`. Requires: Invoicing.CreditNotes, merchant scope.
- [Credit Notes: Updates an existing credit note by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/creditNoteUpdate.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCustomFieldDefinitionGetList.md): `GET /api/invoicing/custom-field-definitions`. Requires: Invoicing.CustomFieldDefinitions, merchant scope.
- [Custom Field Definitions: Creates a new invoice custom field definition.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCustomFieldDefinitionCreate.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCustomFieldDefinitionDelete.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCustomFieldDefinitionGet.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceCustomFieldDefinitionUpdate.md): `PUT /api/invoicing/custom-field-definitions/{id}`. Requires: Invoicing.CustomFieldDefinitions, Invoicing.CustomFieldDefinitions.Update, merchant scope.
- [Payment Plan: Returns the invoice's payment plan.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePaymentPlanGet.md): `GET /api/invoicing/invoices/{id}/payment-plan`. Requires: Invoicing.Invoices, merchant scope.
- [Payment Plan: Sets up a plan against the outstanding balance.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePaymentPlanCreate.md): `POST /api/invoicing/invoices/{id}/payment-plan`. Requires: Invoicing.Invoices, Invoicing.Invoices.PaymentPlan, merchant scope.
- [Payment Plan: Cancels the active payment plan.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePaymentPlanCancel.md): `POST /api/invoicing/invoices/{id}/payment-plan/cancel`. Requires: Invoicing.Invoices, Invoicing.Invoices.PaymentPlan, merchant scope.
- [Payment Plan: Records a manual payment for one pending installment.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePaymentPlanPayInstallment.md): `POST /api/invoicing/invoices/{id}/payment-plan/pay-installment`. Requires: Invoicing.Invoices, Invoicing.Invoices.PaymentPlan, merchant scope.
- [Products: Retrieves a skip/take paged list of invoice products. Deprecated.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceProductGetList.md): `GET /api/invoicing/products` (deprecated). Requires: Invoicing.Products, merchant scope.
- [Products: Creates a new invoice product.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceProductCreate.md): `POST /api/invoicing/products`. Requires: Invoicing.Products, Invoicing.Products.Create, merchant scope.
- [Products: Retrieves a continuation-token paged, filtered list of invoice products.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceProductGetContinuationList.md): `GET /api/invoicing/products/continuation-list`. Requires: Invoicing.Products, merchant scope.
- [Products: Deletes an invoice product by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceProductDelete.md): `DELETE /api/invoicing/products/{id}`. Requires: Invoicing.Products, Invoicing.Products.Delete, merchant scope.
- [Products: Retrieves a single invoice product by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceProductGet.md): `GET /api/invoicing/products/{id}`. Requires: Invoicing.Products, merchant scope.
- [Products: Updates an existing invoice product by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceProductUpdate.md): `PUT /api/invoicing/products/{id}`. Requires: Invoicing.Products, Invoicing.Products.Update, merchant scope.
- [Public: Retrieves an invoice for public viewing using a view token.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePublicGetByViewToken.md): `GET /api/invoicing/public/invoice/{invoiceId}`. No permission required.
- [Public: Downloads an invoice's PDF document using a view token.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoicePublicDownloadPdfByViewToken.md): `GET /api/invoicing/public/invoice/{invoiceId}/pdf`. No permission required.
- [Recurring schedules: Retrieves a filtered list of recurring invoice schedules.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleGetList.md): `GET /api/invoicing/recurring-schedules`. Requires: Invoicing.RecurringSchedules, merchant scope.
- [Recurring schedules: Creates a new recurring invoice schedule.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleCreate.md): `POST /api/invoicing/recurring-schedules`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Create, merchant scope.
- [Recurring schedules: Deletes a recurring invoice schedule by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleDelete.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://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleGet.md): `GET /api/invoicing/recurring-schedules/{id}`. Requires: Invoicing.RecurringSchedules, merchant scope.
- [Recurring schedules: Updates an existing recurring invoice schedule by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleUpdate.md): `PUT /api/invoicing/recurring-schedules/{id}`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Update, merchant scope.
- [Recurring schedules: Cancels a series permanently.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleCancel.md): `POST /api/invoicing/recurring-schedules/{id}/cancel`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Cancel, merchant scope.
- [Recurring schedules: Generates the currently due invoice immediately.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleGenerateNow.md): `POST /api/invoicing/recurring-schedules/{id}/generate-now`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.GenerateNow, merchant scope.
- [Recurring schedules: Pauses an active series.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceSchedulePause.md): `POST /api/invoicing/recurring-schedules/{id}/pause`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Pause, merchant scope.
- [Recurring schedules: Resumes a paused series.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringInvoiceScheduleResume.md): `POST /api/invoicing/recurring-schedules/{id}/resume`. Requires: Invoicing.RecurringSchedules, Invoicing.RecurringSchedules.Resume, merchant scope.
- [Reports: Retrieves the accounts-receivable aging report.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceAgingReportGet.md): `GET /api/invoicing/reports/aging`. Requires: Invoicing.Reports, merchant scope.
- [Reports: Exports the accounts-receivable aging report as CSV.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceAgingReportExportToCsv.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceAgingReportExportToExcel.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTaxRateGetList.md): `GET /api/invoicing/tax-rates`. Requires: Invoicing.TaxRates, merchant scope.
- [Tax Rates: Creates a new invoice tax rate.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTaxRateCreate.md): `POST /api/invoicing/tax-rates`. Requires: Invoicing.TaxRates, Invoicing.TaxRates.Create, merchant scope.
- [Tax Rates: Deletes an invoice tax rate by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTaxRateDelete.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://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTaxRateGet.md): `GET /api/invoicing/tax-rates/{id}`. Requires: Invoicing.TaxRates, merchant scope.
- [Tax Rates: Updates an existing invoice tax rate by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTaxRateUpdate.md): `PUT /api/invoicing/tax-rates/{id}`. Requires: Invoicing.TaxRates, Invoicing.TaxRates.Update, merchant scope.
- [Templates: Retrieves a paged list of invoice templates.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTemplateGetList.md): `GET /api/invoicing/templates`. Requires: Invoicing.Templates, merchant scope.
- [Templates: Creates a new invoice template.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTemplateCreate.md): `POST /api/invoicing/templates`. Requires: Invoicing.Templates, Invoicing.Templates.Create, merchant scope.
- [Templates: Deletes an invoice template by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTemplateDelete.md): `DELETE /api/invoicing/templates/{id}`. Requires: Invoicing.Templates, Invoicing.Templates.Delete, merchant scope.
- [Templates: Retrieves a single invoice template by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTemplateGet.md): `GET /api/invoicing/templates/{id}`. Requires: Invoicing.Templates, merchant scope.
- [Templates: Updates an existing invoice template by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/invoiceTemplateUpdate.md): `PUT /api/invoicing/templates/{id}`. Requires: Invoicing.Templates, Invoicing.Templates.Update, merchant scope.

## Login

**Category:** Identity & Access

Interactive sign-in and sign-out: password authentication, external login linking, and the password re-check a sensitive operation asks for.

- [User login](https://devportal-simpay-sbx.winkpg.io/docs/api/loginLogin.md): `POST /api/account/login`. No permission required.

## Merchant Billing

**Category:** Billing & Invoicing

Reseller-to-merchant billing: billing runs and history, plan-scoped reporting, and the stored payment method used to draft recurring charges.

- [Billing Runs: Lists billing runs in the caller's reseller scope.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunGetList.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://devportal-simpay-sbx.winkpg.io/docs/api/billingRunCreateAndRun.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://devportal-simpay-sbx.winkpg.io/docs/api/billingRunGetActiveOrLatestBatch.md): `GET /api/billing-runs/batch`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Force-clears the current all-resellers fan-out batch.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunClearActiveBatch.md): `POST /api/billing-runs/batch/clear`. Requires: MerchantBilling.BillingRuns, MerchantBilling.BillingRuns.Manage, merchant scope.
- [Billing Runs: Counts the merchants a run bills that their plan does not price.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunGetEnvironmentCoverage.md): `GET /api/billing-runs/environment-coverage`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Gets one merchant's billing history across every run that included it.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunGetMerchantHistory.md): `GET /api/billing-runs/merchant-history`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Gets the plan-scoped historic billing report.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunGetPricePlanHistory.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://devportal-simpay-sbx.winkpg.io/docs/api/billingRunExportPricePlanHistory.md): `GET /api/billing-runs/price-plan-history/export`. Requires: MerchantBilling.BillingRuns, MerchantBilling.Reports, merchant scope.
- [Billing Runs: Lists the resellers the caller can run billing for.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunGetRunTargetResellers.md): `GET /api/billing-runs/target-resellers`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Triggers the admin all-resellers billing fan-out as a background process.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunTriggerAllResellers.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://devportal-simpay-sbx.winkpg.io/docs/api/billingRunGet.md): `GET /api/billing-runs/{id}`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Cancels a pending or running billing run.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunCancel.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://devportal-simpay-sbx.winkpg.io/docs/api/billingRunExportBillingRun.md): `GET /api/billing-runs/{id}/export`. Requires: MerchantBilling.BillingRuns, merchant scope.
- [Billing Runs: Retries a failed recurring charge on a billing run.](https://devportal-simpay-sbx.winkpg.io/docs/api/billingRunRetryRecurringCharge.md): `POST /api/billing-runs/{id}/results/{resultId}/retry-charge`. Requires: MerchantBilling.BillingRuns, MerchantBilling.BillingRuns.Retry, merchant scope.
- [Payment Methods: Gets the merchant's active stored payment method.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodGetForMerchant.md): `GET /api/merchants/{id}/billing/payment-method`. Requires: MerchantBilling.PaymentMethods, merchant scope.
- [Payment Methods: Cancels (revokes) the outstanding capture link for the merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodCancelCaptureLink.md): `POST /api/merchants/{id}/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://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodResendCaptureLink.md): `POST /api/merchants/{id}/billing/payment-method/capture-link/resend`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Emails the merchant a capture link.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodSendCaptureLink.md): `POST /api/merchants/{id}/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://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodGetCaptureLinkStatus.md): `GET /api/merchants/{id}/billing/payment-method/capture-link/status`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Reports whether capture is configured.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodGetCaptureReadiness.md): `GET /api/merchants/{id}/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://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodDeactivate.md): `POST /api/merchants/{id}/billing/payment-method/deactivate`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
- [Payment Methods: Gets the merchant's stored-method history.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodGetHistory.md): `GET /api/merchants/{id}/billing/payment-method/history`. Requires: MerchantBilling.PaymentMethods, merchant scope.
- [Payment Methods: Re-activates a stored-but-inactive payment method for the merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantBillingPaymentMethodActivate.md): `POST /api/merchants/{id}/billing/payment-method/{paymentMethodId}/activate`. Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.

## Merchant Payment Encryption Binding

**Category:** Merchants & Resellers

Read or change one merchant's payment encryption provider bindings, and the key serial identifier entries under them, without sending the whole merchant document back.

- [Payment encryption: lists the merchant's provider bindings.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingGetPaymentEncryptionBindingList.md): `GET /api/merchants/{id}/payment-encryption-bindings`. No permission required.
- [Payment encryption: unbinds one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingDeletePaymentEncryptionBinding.md): `DELETE /api/merchants/{id}/payment-encryption-bindings/{providerName}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Payment encryption: gets the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingGetPaymentEncryptionBinding.md): `GET /api/merchants/{id}/payment-encryption-bindings/{providerName}`. Requires: Merchants.Merchants, merchant scope.
- [Payment encryption: creates or replaces the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingUpsertPaymentEncryptionBinding.md): `PUT /api/merchants/{id}/payment-encryption-bindings/{providerName}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Payment encryption: removes one key entry.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingDeletePaymentEncryptionKeyEntry.md): `DELETE /api/merchants/{id}/payment-encryption-bindings/{providerName}/keys/{ksi}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Payment encryption: adds or replaces one key entry.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingUpsertPaymentEncryptionKeyEntry.md): `PUT /api/merchants/{id}/payment-encryption-bindings/{providerName}/keys/{ksi}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Payment encryption: retires one key entry.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingDeactivatePaymentEncryptionKeyEntry.md): `POST /api/merchants/{id}/payment-encryption-bindings/{providerName}/keys/{ksi}/deactivate`. Requires: Merchants.Merchants.Update, merchant scope.
- [Payment encryption: returns one retired key entry to service.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingReactivatePaymentEncryptionKeyEntry.md): `POST /api/merchants/{id}/payment-encryption-bindings/{providerName}/keys/{ksi}/reactivate`. Requires: Merchants.Merchants.Update, merchant scope.
- [Payment encryption: tests the connection to the bound provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantPaymentEncryptionBindingTestPaymentEncryptionBindingConnection.md): `POST /api/merchants/{id}/payment-encryption-bindings/{providerName}/test-connection`. Requires: Merchants.Merchants.Update, merchant scope.

## Merchants

**Category:** Merchants & Resellers

Merchant onboarding, configuration, processing settings, and lifecycle management.

- [List merchants](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetList.md): `GET /api/merchants`. No permission required.
- [Create merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsCreate.md): `POST /api/merchants`. Requires: Merchants.Merchants.Create, merchant scope.
- [Lists the merchants that can be assigned to a price plan.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetAssignableMerchants.md): `GET /api/merchants/assignable-for-price-plan`. Requires: Merchants.Merchants, merchant scope.
- [Lists the merchants currently assigned to a price plan.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetMerchantsByPricePlan.md): `GET /api/merchants/by-price-plan`. Requires: Merchants.Merchants, merchant scope.
- [Gets the default user account associated with the specified merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetDefaultMerchantUser.md): `POST /api/merchants/get-default-merchant-user-async`. Requires: Merchants.Merchants, merchant scope.
- [Lists the active users of a merchant, with their email addresses.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetMerchantUsers.md): `POST /api/merchants/get-merchant-users-async`. No permission required.
- [Retrieves a continuation-based page of merchants.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetContinuationList.md): `POST /api/merchants/list/continuation`. No permission required.
- [Counts the Merchants that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetApproximateTotalCount.md): `POST /api/merchants/list/continuation/count`. No permission required.
- [Counts Merchants for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetSummaryCounts.md): `POST /api/merchants/list/continuation/summary-counts`. No permission required.
- [Lists the active merchants under the calling reseller and every reseller beneath it.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetResellerScopeMerchants.md): `GET /api/merchants/reseller-scope`. Requires: Merchants.Merchants, merchant scope.
- [Get custom field definitions for the signed-in user's merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetCustomFields.md): `GET /api/merchants/self/custom-fields`. Requires: Merchants.SelfServiceSettings, merchant scope.
- [Update custom field definitions for the signed-in user's merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsUpdateCustomFields.md): `PUT /api/merchants/self/custom-fields`. Requires: Merchants.SelfServiceSettings.Manage, merchant scope.
- [Get order data defaults for the signed-in user's merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetOrderDataDefaults.md): `GET /api/merchants/self/order-data-defaults`. Requires: Merchants.SelfServiceSettings, merchant scope.
- [Update order data defaults for the signed-in user's merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsUpdateOrderDataDefaults.md): `PUT /api/merchants/self/order-data-defaults`. Requires: Merchants.SelfServiceSettings.Manage, merchant scope.
- [Reports whether a processor profile can be deactivated.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsValidateProcessorProfileDeactivation.md): `POST /api/merchants/validate-processor-profile-deactivation-async`. No permission required.
- [Delete merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsDelete.md): `DELETE /api/merchants/{id}`. Requires: Merchants.Merchants.Delete, merchant scope.
- [Get merchant by ID](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGet.md): `GET /api/merchants/{id}`. No permission required.
- [Update merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsUpdate.md): `PUT /api/merchants/{id}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Check merchant access](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsHasEntityAccess.md): `GET /api/merchants/{id}/access`. No permission required.
- [Assigns a merchant to a price plan.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsAssignPricePlan.md): `POST /api/merchants/{id}/assign-price-plan/{pricePlanId}`. Requires: MerchantBilling.PricePlans.Assign, merchant scope.
- [Reads one merchant's custom field definitions.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetCustomFieldsForMerchant.md): `GET /api/merchants/{id}/custom-fields`. No permission required.
- [Locks the specified merchant, preventing modifications and deletions until unlocked.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsLock.md): `POST /api/merchants/{id}/lock`. Requires: Merchants.Merchants.Lock, merchant scope.
- [Get merchant name](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetName.md): `GET /api/merchants/{id}/name`. No permission required.
- [Promotes the specified merchant to the Production environment.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsPromoteToProduction.md): `POST /api/merchants/{id}/promote`. Requires: Merchants.Merchants.ManageEnvironment, merchant scope.
- [Get merchant registers](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsGetRegisters.md): `GET /api/merchants/{id}/registers`. No permission required.
- [Restore deleted merchant](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsRestoreDeletedItem.md): `POST /api/merchants/{id}/restore`. Requires: Merchants.Merchants.Delete, merchant scope.
- [Extends the specified merchant's trial.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsExtendTrial.md): `POST /api/merchants/{id}/trial/extend`. Requires: Merchants.Merchants.ExtendTrial, merchant scope.
- [Clears a merchant's price-plan assignment.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsUnassignPricePlan.md): `POST /api/merchants/{id}/unassign-price-plan`. Requires: MerchantBilling.PricePlans.Assign, merchant scope.
- [Unlocks the specified merchant, allowing modifications and deletions again.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantsUnlock.md): `POST /api/merchants/{id}/unlock`. Requires: Merchants.Merchants.Unlock, merchant scope.
- [Processor Capability: lists what each of the merchant's active processor profiles can do.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantProcessorCapabilityGet.md): `GET /api/merchants/{id}/processor-capabilities`. No permission required.
- [Processor Profile: lists the merchant's processor profiles.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantProcessorProfileGetProcessorProfiles.md): `GET /api/merchants/{id}/processor-profiles`. Requires: Merchants.Merchants, merchant scope.
- [Processor Profile: adds a new processor profile to the merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantProcessorProfileAddProcessorProfile.md): `POST /api/merchants/{id}/processor-profiles`. Requires: Merchants.Merchants.Update, merchant scope.
- [Processor Profile: removes a processor profile from the merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantProcessorProfileDeleteProcessorProfile.md): `DELETE /api/merchants/{id}/processor-profiles/{profileId}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Processor Profile: gets a single processor profile by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantProcessorProfileGetProcessorProfile.md): `GET /api/merchants/{id}/processor-profiles/{profileId}`. Requires: Merchants.Merchants, merchant scope.
- [Processor Profile: replaces an existing processor profile.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantProcessorProfileUpdateProcessorProfile.md): `PUT /api/merchants/{id}/processor-profiles/{profileId}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Processor Profile: gets a read-only, non-secret summary of a single processor profile.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantProcessorProfileGetProcessorProfileSummary.md): `GET /api/merchants/{id}/processor-profiles/{profileId}/summary`. Requires: Transactions.ProcessorConfiguration.View, merchant scope.
- [Register: resolves a register by its legacy numeric key within the caller's own merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/registersFindRegisterByLegacyNumber.md): `GET /api/merchants/registers/by-legacy-number/{legacyNumber}`. Requires: Merchants.SelfServiceSettings, merchant scope.
- [Register: creates or replaces a single register on the merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/registersSaveRegister.md): `POST /api/merchants/{id}/registers`. Requires: Merchants.Merchants.Update, merchant scope.
- [Screening Provider: lists the merchant's screening provider profiles.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantScreeningProviderProfileGetList.md): `GET /api/merchants/{id}/screening-provider-profiles`. No permission required.
- [Screening Provider: adds a screening provider profile to the merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantScreeningProviderProfileCreate.md): `POST /api/merchants/{id}/screening-provider-profiles`. Requires: Merchants.Merchants.Create, merchant scope.
- [Screening Provider: removes a screening provider profile from the merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantScreeningProviderProfileDelete.md): `DELETE /api/merchants/{id}/screening-provider-profiles/{profileId}`. Requires: Merchants.Merchants.Delete, merchant scope.
- [Screening Provider: gets a single screening provider profile by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantScreeningProviderProfileGet.md): `GET /api/merchants/{id}/screening-provider-profiles/{profileId}`. No permission required.
- [Screening Provider: Replaces an existing profile.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantScreeningProviderProfileUpdate.md): `PUT /api/merchants/{id}/screening-provider-profiles/{profileId}`. Requires: Merchants.Merchants.Update, merchant scope.

## Merchant Shipping Binding

**Category:** Merchants & Resellers

Read or change one merchant's shipping rate provider bindings without sending the whole merchant document back.

- [Shipping: lists the merchant's provider bindings.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantShippingBindingGetShippingBindingList.md): `GET /api/merchants/{id}/shipping-bindings`. No permission required.
- [Shipping: removes the merchant's binding for one provider, with any stored credentials.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantShippingBindingDeleteShippingBinding.md): `DELETE /api/merchants/{id}/shipping-bindings/{providerName}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Shipping: gets the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantShippingBindingGetShippingBinding.md): `GET /api/merchants/{id}/shipping-bindings/{providerName}`. Requires: Merchants.Merchants, merchant scope.
- [Shipping: creates or replaces the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantShippingBindingUpsertShippingBinding.md): `PUT /api/merchants/{id}/shipping-bindings/{providerName}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Shipping: probes the merchant's bound provider and reports whether it answered.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantShippingBindingTestShippingBindingConnection.md): `POST /api/merchants/{id}/shipping-bindings/{providerName}/test-connection`. Requires: Merchants.Merchants.Update, merchant scope.

## Merchant Tax Binding

**Category:** Merchants & Resellers

Read or change one merchant's tax provider bindings without sending the whole merchant document back.

- [Tax: lists the merchant's provider bindings.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantTaxBindingGetTaxBindingList.md): `GET /api/merchants/{id}/tax-bindings`. No permission required.
- [Tax: removes the merchant's binding for one provider, with any stored credentials.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantTaxBindingDeleteTaxBinding.md): `DELETE /api/merchants/{id}/tax-bindings/{providerName}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Tax: gets the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantTaxBindingGetTaxBinding.md): `GET /api/merchants/{id}/tax-bindings/{providerName}`. Requires: Merchants.Merchants, merchant scope.
- [Tax: creates or replaces the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantTaxBindingUpsertTaxBinding.md): `PUT /api/merchants/{id}/tax-bindings/{providerName}`. Requires: Merchants.Merchants.Update, merchant scope.
- [Tax: probes the merchant's bound provider and reports whether it answered.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantTaxBindingTestTaxBindingConnection.md): `POST /api/merchants/{id}/tax-bindings/{providerName}/test-connection`. Requires: Merchants.Merchants.Update, merchant scope.

## Merchant Three DS Binding

**Category:** Merchants & Resellers

Read or change one merchant's 3-D Secure bindings without sending the whole merchant document back.

- [3-D Secure: lists the merchant's provider bindings.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantThreeDSBindingGetThreeDSBindingList.md): `GET /api/merchants/{id}/three-d-secure-bindings`. No permission required.
- [3-D Secure: removes the merchant's binding for one provider, with its stored credentials.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantThreeDSBindingDeleteThreeDSBinding.md): `DELETE /api/merchants/{id}/three-d-secure-bindings/{providerType}`. Requires: Merchants.Merchants.Update, merchant scope.
- [3-D Secure: gets the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantThreeDSBindingGetThreeDSBinding.md): `GET /api/merchants/{id}/three-d-secure-bindings/{providerType}`. Requires: Merchants.Merchants, merchant scope.
- [3-D Secure: creates or replaces the merchant's binding for one provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantThreeDSBindingUpsertThreeDSBinding.md): `PUT /api/merchants/{id}/three-d-secure-bindings/{providerType}`. Requires: Merchants.Merchants.Update, merchant scope.
- [3-D Secure: probes the merchant's provider account and reports whether it answered.](https://devportal-simpay-sbx.winkpg.io/docs/api/merchantThreeDSBindingTestThreeDSBindingConnection.md): `POST /api/merchants/{id}/three-d-secure-bindings/{providerType}/test-connection`. Requires: Merchants.Merchants.Update, merchant scope.

## Messaging

**Category:** Messaging & Notifications

Delivery records for the email and SMS the platform sends on a merchant's behalf, plus the SMS consent register that decides who may be texted.

- [Email Log: lists rows for the caller's scope, newest first, with cursor-based paging.](https://devportal-simpay-sbx.winkpg.io/docs/api/emailLogGetList.md): `GET /api/twilio/email-log`. Requires: Twilio.EmailLog.View, merchant scope.
- [Email Log: gets the full event history for one outbound message by its correlation id.](https://devportal-simpay-sbx.winkpg.io/docs/api/emailLogGetByCorrelationId.md): `GET /api/twilio/email-log/by-correlation/{correlationId}`. Requires: Twilio.EmailLog.View, merchant scope.
- [Email Log: gets a single row by its id.](https://devportal-simpay-sbx.winkpg.io/docs/api/emailLogGet.md): `GET /api/twilio/email-log/{id}`. Requires: Twilio.EmailLog.View, merchant scope.
- [SMS Consent: lists consent records for the caller's scope.](https://devportal-simpay-sbx.winkpg.io/docs/api/smsConsentGetList.md): `GET /api/twilio/sms-consent`. Requires: Twilio.SmsConsent.View, merchant scope.
- [SMS Consent: records a consent or opt-out transition with its proof-of-consent evidence.](https://devportal-simpay-sbx.winkpg.io/docs/api/smsConsentRecordConsent.md): `POST /api/twilio/sms-consent`. Requires: Twilio.SmsConsent.View, Twilio.SmsConsent.Manage, merchant scope.
- [SMS Consent: checks whether SMS may be sent to a number in the caller's merchant scope.](https://devportal-simpay-sbx.winkpg.io/docs/api/smsConsentCheck.md): `GET /api/twilio/sms-consent/check`. Requires: Twilio.SmsConsent.View, merchant scope.
- [SMS Log: lists outbound SMS delivery records for the caller's scope.](https://devportal-simpay-sbx.winkpg.io/docs/api/smsLogGetList.md): `GET /api/twilio/sms-log`. Requires: Twilio.SmsLog.View, merchant scope.
- [SMS Log: gets the delivery record for one outbound message by its correlation id.](https://devportal-simpay-sbx.winkpg.io/docs/api/smsLogFindByCorrelationId.md): `GET /api/twilio/sms-log/by-correlation/{correlationId}`. Requires: Twilio.SmsLog.View, merchant scope.

## My Session

**Category:** Identity & Access

Self-service listing and revocation of the signed-in user's own active login sessions.

- [Counts the entities matching `input`.](https://devportal-simpay-sbx.winkpg.io/docs/api/mySessionGetApproximateTotalCount.md): `GET /api/app/my-session/approximate-total-count`. No permission required.
- [/api/app/my-session/continuation-list](https://devportal-simpay-sbx.winkpg.io/docs/api/mySessionGetContinuationList.md): `GET /api/app/my-session/continuation-list`. No permission required.
- [/api/app/my-session/summary-counts](https://devportal-simpay-sbx.winkpg.io/docs/api/mySessionGetSummaryCounts.md): `GET /api/app/my-session/summary-counts`. No permission required.
- [/api/app/my-session/{id}/ensure-entity-access](https://devportal-simpay-sbx.winkpg.io/docs/api/mySessionEnsureEntityAccess.md): `POST /api/app/my-session/{id}/ensure-entity-access`. No permission required.
- [/api/app/my-session/{id}/revoke](https://devportal-simpay-sbx.winkpg.io/docs/api/mySessionRevoke.md): `POST /api/app/my-session/{id}/revoke`. No permission required.
- [/api/app/my-session/{id}/try-ensure-entity-access](https://devportal-simpay-sbx.winkpg.io/docs/api/mySessionTryEnsureEntityAccess.md): `POST /api/app/my-session/{id}/try-ensure-entity-access`. No permission required.

## Notifications

**Category:** Messaging & Notifications

Notification channels, destinations, subscriptions, and delivery tracking.

- [Get a list of NotificationChannels](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetListChannels.md): `GET /api/notifications/channels`. Requires: Notifications.Channels, merchant scope.
- [Create a NotificationChannel](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsCreateChannels.md): `POST /api/notifications/channels`. Requires: Notifications.Channels, Notifications.Channels.Create, merchant scope.
- [Retrieves a continuation-based page of NotificationChannels.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetContinuationListChannels.md): `POST /api/notifications/channels/list/continuation`. Requires: Notifications.Channels, merchant scope.
- [Counts the NotificationChannels that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetApproximateTotalCountChannelsListContinuation.md): `POST /api/notifications/channels/list/continuation/count`. Requires: Notifications.Channels, merchant scope.
- [Counts NotificationChannels for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetSummaryCountsChannelsListContinuation.md): `POST /api/notifications/channels/list/continuation/summary-counts`. Requires: Notifications.Channels, merchant scope.
- [Delete a NotificationChannel](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDeleteChannelsId.md): `DELETE /api/notifications/channels/{id}`. Requires: Notifications.Channels, Notifications.Channels.Delete, merchant scope.
- [Get a NotificationChannel](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetChannelsId.md): `GET /api/notifications/channels/{id}`. Requires: Notifications.Channels, merchant scope.
- [Update a NotificationChannel](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsUpdateChannelsId.md): `PUT /api/notifications/channels/{id}`. Requires: Notifications.Channels, Notifications.Channels.Update, merchant scope.
- [Check NotificationChannel access](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsHasEntityAccessChannelsId.md): `GET /api/notifications/channels/{id}/access`. Requires: Notifications.Channels, merchant scope.
- [Disables a channel.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDisableChannelsId.md): `POST /api/notifications/channels/{id}/disable`. Requires: Notifications.Channels, Notifications.Channels.Update, merchant scope.
- [Duplicates a channel.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDuplicateChannelsId.md): `POST /api/notifications/channels/{id}/duplicate`. Requires: Notifications.Channels, Notifications.Channels.Create, merchant scope.
- [Enables a channel.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsEnableChannelsId.md): `POST /api/notifications/channels/{id}/enable`. Requires: Notifications.Channels, Notifications.Channels.Update, merchant scope.
- [Get a NotificationChannel name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetNameChannelsId.md): `GET /api/notifications/channels/{id}/name`. Requires: Notifications.Channels, merchant scope.
- [Restore a deleted NotificationChannel](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsRestoreDeletedItemChannelsId.md): `POST /api/notifications/channels/{id}/restore`. Requires: Notifications.Channels, merchant scope.
- [Counts how deliveries ended in a time window, broken down by outcome.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetDeliveryOutcomeSummary.md): `POST /api/notifications/deliveries/outcome-summary`. Requires: Notifications.Deliveries, merchant scope.
- [Get a list of NotificationDestinations](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetListDestinations.md): `GET /api/notifications/destinations`. Requires: Notifications.Destinations, merchant scope.
- [Create a NotificationDestination](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsCreateDestinations.md): `POST /api/notifications/destinations`. Requires: Notifications.Destinations, Notifications.Destinations.Create, merchant scope.
- [Retrieves a continuation-based page of NotificationDestinations.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetContinuationListDestinations.md): `POST /api/notifications/destinations/list/continuation`. Requires: Notifications.Destinations, merchant scope.
- [Counts the NotificationDestinations that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetApproximateTotalCountDestinationsListContinuation.md): `POST /api/notifications/destinations/list/continuation/count`. Requires: Notifications.Destinations, merchant scope.
- [Counts NotificationDestinations for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetSummaryCountsDestinationsListContinuation.md): `POST /api/notifications/destinations/list/continuation/summary-counts`. Requires: Notifications.Destinations, merchant scope.
- [Returns metadata (icon, logo) for all supported destination types.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetDestinationTypeMetadata.md): `GET /api/notifications/destinations/types/metadata`. Requires: Notifications.Destinations, merchant scope.
- [Tests a destination configuration without requiring a saved entity.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsTestConfig.md): `POST /api/notifications/destinations/types/{type}/test-config`. Requires: Notifications.Destinations, Notifications.Destinations.Create, merchant scope.
- [Validates destination configuration for a specific type.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsValidateConfig.md): `POST /api/notifications/destinations/types/{type}/validate`. Requires: Notifications.Destinations, merchant scope.
- [Delete a NotificationDestination](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDeleteDestinationsId.md): `DELETE /api/notifications/destinations/{id}`. Requires: Notifications.Destinations, Notifications.Destinations.Delete, merchant scope.
- [Get a NotificationDestination](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetDestinationsId.md): `GET /api/notifications/destinations/{id}`. Requires: Notifications.Destinations, merchant scope.
- [Update a NotificationDestination](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsUpdateDestinationsId.md): `PUT /api/notifications/destinations/{id}`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Check NotificationDestination access](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsHasEntityAccessDestinationsId.md): `GET /api/notifications/destinations/{id}/access`. Requires: Notifications.Destinations, merchant scope.
- [Disables a destination.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDisableDestinationsId.md): `POST /api/notifications/destinations/{id}/disable`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Duplicates a destination.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDuplicateDestinationsId.md): `POST /api/notifications/destinations/{id}/duplicate`. Requires: Notifications.Destinations, Notifications.Destinations.Create, merchant scope.
- [Enables a destination.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsEnableDestinationsId.md): `POST /api/notifications/destinations/{id}/enable`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Get a NotificationDestination name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetNameDestinationsId.md): `GET /api/notifications/destinations/{id}/name`. Requires: Notifications.Destinations, merchant scope.
- [Restore a deleted NotificationDestination](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsRestoreDeletedItemDestinationsId.md): `POST /api/notifications/destinations/{id}/restore`. Requires: Notifications.Destinations, merchant scope.
- [Gets a destination's signing-secret rotation state.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetSecretRotationState.md): `GET /api/notifications/destinations/{id}/secret-rotation`. Requires: Notifications.Destinations, merchant scope.
- [Starts a signing-secret rotation.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsBeginSecretRotation.md): `POST /api/notifications/destinations/{id}/secret-rotation/begin`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Abandons a signing-secret rotation.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsCancelSecretRotation.md): `POST /api/notifications/destinations/{id}/secret-rotation/cancel`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Completes a signing-secret rotation.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsPromoteSecretRotation.md): `POST /api/notifications/destinations/{id}/secret-rotation/promote`. Requires: Notifications.Destinations, Notifications.Destinations.Update, merchant scope.
- [Sends a realistic sample of one event type to a saved webhook destination.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsSendSample.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.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetSuppressionState.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://devportal-simpay-sbx.winkpg.io/docs/api/notificationsClearSuppression.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://devportal-simpay-sbx.winkpg.io/docs/api/notificationsTest.md): `POST /api/notifications/destinations/{id}/test`. Requires: Notifications.Destinations, Notifications.Destinations.Test, merchant scope.
- [Returns all event types available for the current user's scope.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetListEventTypes.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://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetPayloadSchema.md): `GET /api/notifications/event-types/{eventType}/payload-schema`. Requires: Notifications.EventTypes, merchant scope.
- [Returns a sample payload for a specific event type.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetSamplePayload.md): `GET /api/notifications/event-types/{eventType}/sample-payload`. Requires: Notifications.EventTypes, merchant scope.
- [Lists the webhooks sent to your endpoints in a time window.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetWebhookEvents.md): `GET /api/notifications/events`. Requires: Notifications.Events, merchant scope.
- [Sends every replayable delivery in a time window to your endpoints again.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsReplayWebhookEvents.md): `POST /api/notifications/events/replay`. Requires: Notifications.Events.Replay, merchant scope.
- [Reads one webhook delivery, including the body posted to your endpoint.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetWebhookEvent.md): `GET /api/notifications/events/{id}`. Requires: Notifications.Events, merchant scope.
- [Sends one webhook delivery to your endpoint again.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsReplayWebhookEvent.md): `POST /api/notifications/events/{id}/replay`. Requires: Notifications.Events.Replay, merchant scope.
- [Validates a filter expression.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsValidateFilter.md): `POST /api/notifications/filters/validate`. Requires: Notifications.Subscriptions, merchant scope.
- [Lists the caller's notifications, newest first.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetInboxList.md): `GET /api/notifications/inbox`. No permission required.
- [Lists the notification categories the inbox can be filtered by.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetInboxCategories.md): `GET /api/notifications/inbox/categories`. No permission required.
- [Marks the caller's unread notifications read.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsMarkAllInboxItemsRead.md): `POST /api/notifications/inbox/mark-all-read`. No permission required.
- [Counts the caller's unread notifications.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetInboxUnreadSummary.md): `GET /api/notifications/inbox/unread-summary`. No permission required.
- [Marks one of the caller's notifications read.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsMarkInboxItemRead.md): `POST /api/notifications/inbox/{id}/mark-read`. No permission required.
- [Opens a listen session for the caller's merchant and returns its signing secret, once.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsCreateListenSessions.md): `POST /api/notifications/listen-sessions`. Requires: Notifications.ListenSessions.Listen, merchant scope.
- [Ends the caller's own session. Its cursor and its secret stop working.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsEnd.md): `POST /api/notifications/listen-sessions/{id}/end`. Requires: Notifications.ListenSessions.Listen, merchant scope.
- [Returns events staged after the cursor, oldest first, and renews the session.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsPoll.md): `GET /api/notifications/listen-sessions/{id}/events`. Requires: Notifications.ListenSessions.Listen, merchant scope.
- [Stages the event catalog's sample for one event type into a live session's buffer.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsStageSample.md): `POST /api/notifications/listen-sessions/{id}/sample`. Requires: Notifications.ListenSessions.Listen, Notifications.Destinations.Test, merchant scope.
- [Get a list of NotificationSubscriptions](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetListSubscriptions.md): `GET /api/notifications/subscriptions`. Requires: Notifications.Subscriptions, merchant scope.
- [Create a NotificationSubscription](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsCreateSubscriptions.md): `POST /api/notifications/subscriptions`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Create, merchant scope.
- [Retrieves a continuation-based page of NotificationSubscriptions.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetContinuationListSubscriptions.md): `POST /api/notifications/subscriptions/list/continuation`. Requires: Notifications.Subscriptions, merchant scope.
- [Counts the NotificationSubscriptions that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetApproximateTotalCountSubscriptionsListContinuation.md): `POST /api/notifications/subscriptions/list/continuation/count`. Requires: Notifications.Subscriptions, merchant scope.
- [Counts NotificationSubscriptions for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetSummaryCountsSubscriptionsListContinuation.md): `POST /api/notifications/subscriptions/list/continuation/summary-counts`. Requires: Notifications.Subscriptions, merchant scope.
- [Delete a NotificationSubscription](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDeleteSubscriptionsId.md): `DELETE /api/notifications/subscriptions/{id}`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Delete, merchant scope.
- [Get a NotificationSubscription](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetSubscriptionsId.md): `GET /api/notifications/subscriptions/{id}`. Requires: Notifications.Subscriptions, merchant scope.
- [Update a NotificationSubscription](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsUpdateSubscriptionsId.md): `PUT /api/notifications/subscriptions/{id}`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Update, merchant scope.
- [Check NotificationSubscription access](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsHasEntityAccessSubscriptionsId.md): `GET /api/notifications/subscriptions/{id}/access`. Requires: Notifications.Subscriptions, merchant scope.
- [Disables a subscription.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDisableSubscriptionsId.md): `POST /api/notifications/subscriptions/{id}/disable`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Update, merchant scope.
- [Duplicates a subscription.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsDuplicateSubscriptionsId.md): `POST /api/notifications/subscriptions/{id}/duplicate`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Create, merchant scope.
- [Enables a subscription.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsEnableSubscriptionsId.md): `POST /api/notifications/subscriptions/{id}/enable`. Requires: Notifications.Subscriptions, Notifications.Subscriptions.Update, merchant scope.
- [Get a NotificationSubscription name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetNameSubscriptionsId.md): `GET /api/notifications/subscriptions/{id}/name`. Requires: Notifications.Subscriptions, merchant scope.
- [Restore a deleted NotificationSubscription](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsRestoreDeletedItemSubscriptionsId.md): `POST /api/notifications/subscriptions/{id}/restore`. Requires: Notifications.Subscriptions, merchant scope.
- [Handles unsubscribe link clicks from emails.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsGetUnsubscribe.md): `GET /api/notifications/unsubscribe`. No permission required.
- [Handles RFC 8058 one-click unsubscribe (POST with List-Unsubscribe-Post header).](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsOneClick.md): `POST /api/notifications/unsubscribe`. No permission required.
- [Confirms the unsubscribe request and disables the subscription.](https://devportal-simpay-sbx.winkpg.io/docs/api/notificationsConfirm.md): `POST /api/notifications/unsubscribe/confirm`. No permission required.

## Processor Metadata

**Category:** Platform Configuration

Read-only discovery API that exposes the configuration shape each payment processor requires.

- [Lists every supported processor.](https://devportal-simpay-sbx.winkpg.io/docs/api/processorMetadataGetProcessors.md): `GET /api/processors`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.
- [Returns the configuration field schema for one processor.](https://devportal-simpay-sbx.winkpg.io/docs/api/processorMetadataGetConfigSchema.md): `GET /api/processors/{processorId}/config-schema`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.
- [Returns a ready-to-fill processor profile skeleton.](https://devportal-simpay-sbx.winkpg.io/docs/api/processorMetadataGetConfigTemplate.md): `GET /api/processors/{processorId}/config-schema/template`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.
- [Dry-run validates a processor configuration payload.](https://devportal-simpay-sbx.winkpg.io/docs/api/processorMetadataValidateConfig.md): `POST /api/processors/{processorId}/validate-config`. Requires: Transactions.ProcessorConfiguration.ViewSchema, merchant scope.

## Promotions

**Category:** Payments

Merchant promotion codes: one discount, one validity window and one set of redemption ceilings, shared by hosted pages, contracts and invoices.

- [Get a list of Promotions](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsGetList.md): `GET /api/promotions`. Requires: Promotions.Promotions, merchant scope.
- [Create a Promotion](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsCreate.md): `POST /api/promotions`. Requires: Promotions.Promotions, Promotions.Promotions.Create, merchant scope.
- [Retrieves a continuation-based page of Promotions.](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsGetContinuationList.md): `POST /api/promotions/list/continuation`. Requires: Promotions.Promotions, merchant scope.
- [Counts the Promotions that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsGetApproximateTotalCount.md): `POST /api/promotions/list/continuation/count`. Requires: Promotions.Promotions, merchant scope.
- [Counts Promotions for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsGetSummaryCounts.md): `POST /api/promotions/list/continuation/summary-counts`. Requires: Promotions.Promotions, merchant scope.
- [Suggests promotion codes built from the values the caller has filled in so far.](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsSuggestCodes.md): `POST /api/promotions/suggest-codes`. Requires: Promotions.Promotions, merchant scope.
- [Delete a Promotion](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsDelete.md): `DELETE /api/promotions/{id}`. Requires: Promotions.Promotions, Promotions.Promotions.Delete, merchant scope.
- [Get a Promotion](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsGet.md): `GET /api/promotions/{id}`. Requires: Promotions.Promotions, merchant scope.
- [Update a Promotion](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsUpdate.md): `PUT /api/promotions/{id}`. Requires: Promotions.Promotions, Promotions.Promotions.Update, merchant scope.
- [Check Promotion access](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsHasEntityAccess.md): `GET /api/promotions/{id}/access`. Requires: Promotions.Promotions, merchant scope.
- [Get a Promotion name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsGetName.md): `GET /api/promotions/{id}/name`. Requires: Promotions.Promotions, merchant scope.
- [Restore a deleted Promotion](https://devportal-simpay-sbx.winkpg.io/docs/api/promotionsRestoreDeletedItem.md): `POST /api/promotions/{id}/restore`. Requires: Promotions.Promotions, Promotions.Promotions.Update, merchant scope.

## Rate Limits

**Category:** Platform Configuration

Stored rate limiting configuration: profiles that bind a set of limits to a scope, and the rules within them that cap request rates, concurrency, and accumulated amounts.

- [Rate Limit Profiles: retrieves a paged list of profiles.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileGetList.md): `GET /api/rate-limiting/profiles`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: creates a profile.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileCreate.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://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileGetContinuationList.md): `GET /api/rate-limiting/profiles/continuation`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: Counts the profiles matching the input.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileGetApproximateTotalCount.md): `GET /api/rate-limiting/profiles/continuation/count`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: deletes a profile by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileDelete.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://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileGet.md): `GET /api/rate-limiting/profiles/{id}`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: updates a profile by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileUpdate.md): `PUT /api/rate-limiting/profiles/{id}`. Requires: RateLimiting.Profiles, RateLimiting.Profiles.Update, merchant scope.
- [Rate Limit Profiles: reports whether the caller may access the profile.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileHasEntityAccess.md): `GET /api/rate-limiting/profiles/{id}/access`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: returns a profile's display name.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileGetName.md): `GET /api/rate-limiting/profiles/{id}/name`. Requires: RateLimiting.Profiles, merchant scope.
- [Rate Limit Profiles: restores a previously deleted profile.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitProfileRestoreDeletedItem.md): `POST /api/rate-limiting/profiles/{id}/restore`. Requires: RateLimiting.Profiles, RateLimiting.Profiles.Update, merchant scope.
- [Rate Limit Rules: retrieves a paged list of rules.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleGetList.md): `GET /api/rate-limiting/rules`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: creates a rule.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleCreate.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://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleGetContinuationList.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://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleGetApproximateTotalCount.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://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleGetLimiterCatalog.md): `GET /api/rate-limiting/rules/limiters`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: lists every profile as a lightweight picker item.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleGetProfileLookup.md): `GET /api/rate-limiting/rules/profiles`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: deletes a rule by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleDelete.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://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleGet.md): `GET /api/rate-limiting/rules/{id}`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: updates a rule by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleUpdate.md): `PUT /api/rate-limiting/rules/{id}`. Requires: RateLimiting.Rules, RateLimiting.Rules.Update, merchant scope.
- [Rate Limit Rules: reports whether the caller may access the rule.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleHasEntityAccess.md): `GET /api/rate-limiting/rules/{id}/access`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: returns a rule's display name.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleGetName.md): `GET /api/rate-limiting/rules/{id}/name`. Requires: RateLimiting.Rules, merchant scope.
- [Rate Limit Rules: restores a previously deleted rule.](https://devportal-simpay-sbx.winkpg.io/docs/api/rateLimitRuleRestoreDeletedItem.md): `POST /api/rate-limiting/rules/{id}/restore`. Requires: RateLimiting.Rules, RateLimiting.Rules.Update, merchant scope.

## Recurring Billing

**Category:** Billing & Invoicing

Recurring billing for customer contracts: triggering a run by hand, and the history of runs already executed.

- [Get billing history filtered by contract.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringBillingGetHistoryByContract.md): `GET /api/customers/recurring-billing/contracts/{contractId}/history`. Requires: Customers.RecurringBilling.ViewHistory, merchant scope.
- [Get billing history filtered by customer.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringBillingGetHistoryByCustomer.md): `GET /api/customers/recurring-billing/customers/{customerId}/history`. Requires: Customers.RecurringBilling.ViewHistory, merchant scope.
- [Get paginated execution history of recurring billing runs.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringBillingGetHistory.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://devportal-simpay-sbx.winkpg.io/docs/api/recurringBillingGetRunDetail.md): `GET /api/customers/recurring-billing/runs/{id}`. Requires: Customers.RecurringBilling.ViewHistory, merchant scope.
- [Manually trigger a recurring billing workflow execution.](https://devportal-simpay-sbx.winkpg.io/docs/api/recurringBillingTrigger.md): `POST /api/customers/recurring-billing/trigger`. Requires: Customers.RecurringBilling.Trigger, merchant scope.

## Reports

**Category:** Reporting & Operations

Report generation, scheduling, and export.

- [Lists the reports you can run.](https://devportal-simpay-sbx.winkpg.io/docs/api/reportsGetList.md): `GET /api/reports`. No permission required.
- [Lists the columns a report returns.](https://devportal-simpay-sbx.winkpg.io/docs/api/reportsGetColumns.md): `GET /api/reports/{reportId}/columns`. No permission required.
- [Runs a report and returns it as a file.](https://devportal-simpay-sbx.winkpg.io/docs/api/reportsExport.md): `POST /api/reports/{reportId}/export`. No permission required.
- [Lists the filters a report accepts.](https://devportal-simpay-sbx.winkpg.io/docs/api/reportsGetParameters.md): `GET /api/reports/{reportId}/parameters`. No permission required.
- [Runs a report and returns its rows.](https://devportal-simpay-sbx.winkpg.io/docs/api/reportsRun.md): `POST /api/reports/{reportId}/run`. No permission required.

## Resellers

**Category:** Merchants & Resellers

Reseller partner management, hierarchy, and merchant assignment.

- [List resellers](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetList.md): `GET /api/resellers`. Requires: Resellers.Resellers, reseller scope.
- [Create reseller](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersCreate.md): `POST /api/resellers`. Requires: Resellers.Resellers.Create, reseller scope.
- [Reads a reseller's billing preferences.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetBillingPreferences.md): `POST /api/resellers/get-billing-preferences-async`. Requires: Resellers.Resellers.Update, reseller scope.
- [Gets default reseller user.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetDefaultResellerUser.md): `POST /api/resellers/get-default-reseller-user-async`. Requires: Resellers.Resellers, reseller scope.
- [Reads a reseller's effective collection configuration.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetEffectiveCollectionConfiguration.md): `POST /api/resellers/get-effective-collection-configuration-async`. Requires: Resellers.Resellers.Update, reseller scope.
- [Reads a reseller in full for the merchant-billing setup flow.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetForBillingSelfService.md): `POST /api/resellers/get-for-billing-self-service-async`. Requires: Resellers.Resellers.Update, reseller scope.
- [Reads the billing preferences of the calling operator's own reseller.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetOwnBillingPreferences.md): `POST /api/resellers/get-own-billing-preferences-async`. Requires: Resellers.Resellers.Update, reseller scope.
- [Reads the calling operator's own effective collection configuration.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetOwnEffectiveCollectionConfiguration.md): `POST /api/resellers/get-own-effective-collection-configuration-async`. Requires: Resellers.Resellers.Update, reseller scope.
- [Retrieves a continuation-based page of Resellers.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetContinuationList.md): `POST /api/resellers/list/continuation`. Requires: Resellers.Resellers, reseller scope.
- [Counts the Resellers that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetApproximateTotalCount.md): `POST /api/resellers/list/continuation/count`. Requires: Resellers.Resellers, reseller scope.
- [Counts Resellers for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetSummaryCounts.md): `POST /api/resellers/list/continuation/summary-counts`. Requires: Resellers.Resellers, reseller scope.
- [Replaces a reseller's billing preferences.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersUpdateBillingPreferences.md): `POST /api/resellers/update-billing-preferences-async`. Requires: Resellers.Resellers.Update, reseller scope.
- [Replaces the billing preferences of the calling operator's own reseller.](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersUpdateOwnBillingPreferences.md): `POST /api/resellers/update-own-billing-preferences-async`. Requires: Resellers.Resellers.Update, reseller scope.
- [Delete reseller](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersDelete.md): `DELETE /api/resellers/{id}`. Requires: Resellers.Resellers.Delete, reseller scope.
- [Get reseller by ID](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGet.md): `GET /api/resellers/{id}`. Requires: Resellers.Resellers, reseller scope.
- [Update reseller](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersUpdate.md): `PUT /api/resellers/{id}`. Requires: Resellers.Resellers.Update, reseller scope.
- [Check reseller access](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersHasEntityAccess.md): `GET /api/resellers/{id}/access`. No permission required.
- [Get reseller name](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersGetName.md): `GET /api/resellers/{id}/name`. No permission required.
- [Restore deleted reseller](https://devportal-simpay-sbx.winkpg.io/docs/api/resellersRestoreDeletedItem.md): `POST /api/resellers/{id}/restore`. Requires: Resellers.Resellers, reseller scope.

## Roles

**Category:** Identity & Access

Roles, and the claims attached to them. A role is how a set of permissions is granted to every user assigned it.

- [List roles](https://devportal-simpay-sbx.winkpg.io/docs/api/roleGetList.md): `GET /api/identity/roles`. Requires: AbpIdentity.Roles, host scope.
- [Create new role](https://devportal-simpay-sbx.winkpg.io/docs/api/roleCreate.md): `POST /api/identity/roles`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Create, host scope.
- [Get all roles](https://devportal-simpay-sbx.winkpg.io/docs/api/roleGetAllList.md): `GET /api/identity/roles/all`. Requires: AbpIdentity.Roles, host scope.
- [GetAllClaimTypes for Role](https://devportal-simpay-sbx.winkpg.io/docs/api/roleGetAllClaimTypes.md): `GET /api/identity/roles/all-claim-types`. Requires: AbpIdentity.Roles, host scope.
- [Delete role](https://devportal-simpay-sbx.winkpg.io/docs/api/roleDelete.md): `DELETE /api/identity/roles/{id}`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Delete, host scope.
- [Get role by ID](https://devportal-simpay-sbx.winkpg.io/docs/api/roleGet.md): `GET /api/identity/roles/{id}`. Requires: AbpIdentity.Roles, host scope.
- [Update role](https://devportal-simpay-sbx.winkpg.io/docs/api/roleUpdate.md): `PUT /api/identity/roles/{id}`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.
- [GetClaims for Role](https://devportal-simpay-sbx.winkpg.io/docs/api/roleGetClaims.md): `GET /api/identity/roles/{id}/claims`. Requires: AbpIdentity.Roles, host scope.
- [Update role claims](https://devportal-simpay-sbx.winkpg.io/docs/api/roleUpdateClaims.md): `PUT /api/identity/roles/{id}/claims`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.
- [Move all users to role](https://devportal-simpay-sbx.winkpg.io/docs/api/roleMoveAllUsers.md): `PUT /api/identity/roles/{id}/move-all-users`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.
- [/api/identity/roles/{id}/users/{userId}](https://devportal-simpay-sbx.winkpg.io/docs/api/roleRemoveUser.md): `DELETE /api/identity/roles/{id}/users/{userId}`. Requires: AbpIdentity.Roles, AbpIdentity.Roles.Update, host scope.

## Sandbox Ach Status

**Category:** Payments

Drives a sandbox ACH sale to a chosen settlement outcome on demand, so an integrator can prove an ACH webhook in one session.

- [Advance a sandbox ACH sale to a chosen settlement outcome.](https://devportal-simpay-sbx.winkpg.io/docs/api/sandboxAchStatusAdvanceAchStatus.md): `POST /api/transactions/{id}/sandbox/ach-status`. Requires: Transactions.Settlement.Trigger, merchant scope.

## Sandbox Recurring Billing

**Category:** Customers

Brings a sandbox merchant's recurring contracts due now and bills them, synchronously, for the developer who holds the key.

- [Run the calling sandbox key's merchant's recurring billing now.](https://devportal-simpay-sbx.winkpg.io/docs/api/sandboxRecurringBillingRunNow.md): `POST /api/customers/recurring-billing/sandbox/run-now`. Requires: Customers.RecurringBilling.TriggerSandbox, merchant scope.

## Sandbox Settlement

**Category:** Payments

Closes a sandbox merchant's open batch on demand, synchronously, for the developer who holds the key.

- [Close the calling sandbox key's merchant batch.](https://devportal-simpay-sbx.winkpg.io/docs/api/sandboxSettlementClose.md): `POST /api/transactions/settlements/sandbox/close`. Requires: Transactions.Settlement.Trigger, merchant scope.

## Screening Provider Metadata

**Category:** Platform Configuration

Read-only discovery API that exposes the configuration shape each external screening provider requires.

- [Lists every supported screening provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/screeningProviderMetadataGetProviders.md): `GET /api/screening-providers`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.
- [Returns the configuration field schema for a single screening provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/screeningProviderMetadataGetConfigSchema.md): `GET /api/screening-providers/{providerId}/config-schema`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.
- [Returns a ready-to-fill screening provider profile skeleton.](https://devportal-simpay-sbx.winkpg.io/docs/api/screeningProviderMetadataGetConfigTemplate.md): `GET /api/screening-providers/{providerId}/config-schema/template`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.
- [Dry-run validates a screening provider configuration payload.](https://devportal-simpay-sbx.winkpg.io/docs/api/screeningProviderMetadataValidateConfig.md): `POST /api/screening-providers/{providerId}/validate-config`. Requires: Transactions.ScreeningProviderConfiguration.ViewSchema, merchant scope.

## Security

**Category:** Reporting & Operations

Self-service access to the signed-in user's own security log: sign-ins, password changes, and the other identity events recorded against their account.

- [Counts the entities matching `input`.](https://devportal-simpay-sbx.winkpg.io/docs/api/mySecurityLogGetApproximateTotalCount.md): `GET /api/app/my-security-log/approximate-total-count`. No permission required.
- [/api/app/my-security-log/continuation-list](https://devportal-simpay-sbx.winkpg.io/docs/api/mySecurityLogGetContinuationList.md): `GET /api/app/my-security-log/continuation-list`. No permission required.
- [/api/app/my-security-log/summary-counts](https://devportal-simpay-sbx.winkpg.io/docs/api/mySecurityLogGetSummaryCounts.md): `GET /api/app/my-security-log/summary-counts`. No permission required.
- [/api/app/my-security-log/{id}/ensure-entity-access](https://devportal-simpay-sbx.winkpg.io/docs/api/mySecurityLogEnsureEntityAccess.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://devportal-simpay-sbx.winkpg.io/docs/api/mySecurityLogTryEnsureEntityAccess.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://devportal-simpay-sbx.winkpg.io/docs/api/sbomGetList.md): `GET /api/security-posture/sbom/builds`. Requires: SecurityPosture.Sbom, merchant scope.
- [Return the component manifest for a single build.](https://devportal-simpay-sbx.winkpg.io/docs/api/sbomGetManifest.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://devportal-simpay-sbx.winkpg.io/docs/api/sbomDownload.md): `GET /api/security-posture/sbom/builds/{buildId}/components/{componentName}`. Requires: SecurityPosture.Sbom, SecurityPosture.Sbom.Download, merchant scope.

## Security Overview

**Category:** Identity & Access

Reads the security posture of an account, and of a merchant's accounts and API keys, for the security hub.

- [/api/app/security-overview](https://devportal-simpay-sbx.winkpg.io/docs/api/securityOverviewGet.md): `GET /api/app/security-overview`. No permission required.
- [/api/app/security-overview/for-user/{userId}](https://devportal-simpay-sbx.winkpg.io/docs/api/securityOverviewGetForUser.md): `GET /api/app/security-overview/for-user/{userId}`. Requires: AbpIdentity.Users, host scope.
- [/api/app/security-overview/impersonation-access-history](https://devportal-simpay-sbx.winkpg.io/docs/api/securityOverviewGetImpersonationAccessHistory.md): `GET /api/app/security-overview/impersonation-access-history`. Requires: AbpIdentity.Users, host scope.
- [/api/app/security-overview/merchant-posture](https://devportal-simpay-sbx.winkpg.io/docs/api/securityOverviewGetMerchantPosture.md): `GET /api/app/security-overview/merchant-posture`. Requires: AbpIdentity.Users, host scope.
- [/api/app/security-overview/revoke-other-sessions](https://devportal-simpay-sbx.winkpg.io/docs/api/securityOverviewRevokeOtherSessions.md): `POST /api/app/security-overview/revoke-other-sessions`. No permission required.

## Shipping

**Category:** Payments

A merchant's ship-from origins and parcel presets: the two inputs a shipping rate quote needs beyond the destination.

- [Parcel presets: retrieves a paged list of presets.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetGetList.md): `GET /api/shipping/parcel-presets`. Requires: Shipping.ParcelPresets, merchant scope.
- [Parcel presets: creates a preset. A merchant's first preset becomes its default.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetCreate.md): `POST /api/shipping/parcel-presets`. Requires: Shipping.ParcelPresets, Shipping.ParcelPresets.Create, merchant scope.
- [Parcel presets: retrieves a continuation-token paged list of presets.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetGetContinuationList.md): `GET /api/shipping/parcel-presets/continuation`. Requires: Shipping.ParcelPresets, merchant scope.
- [Parcel presets: counts the presets matching the input.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetGetApproximateTotalCount.md): `GET /api/shipping/parcel-presets/continuation/count`. Requires: Shipping.ParcelPresets, merchant scope.
- [Parcel presets: deletes a preset by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetDelete.md): `DELETE /api/shipping/parcel-presets/{id}`. Requires: Shipping.ParcelPresets, Shipping.ParcelPresets.Delete, merchant scope.
- [Parcel presets: retrieves a single preset by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetGet.md): `GET /api/shipping/parcel-presets/{id}`. Requires: Shipping.ParcelPresets, merchant scope.
- [Parcel presets: updates a preset by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetUpdate.md): `PUT /api/shipping/parcel-presets/{id}`. Requires: Shipping.ParcelPresets, Shipping.ParcelPresets.Update, merchant scope.
- [Parcel presets: reports whether the caller may access the preset.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetHasEntityAccess.md): `GET /api/shipping/parcel-presets/{id}/access`. Requires: Shipping.ParcelPresets, merchant scope.
- [Parcel presets: returns a preset's display name.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetGetName.md): `GET /api/shipping/parcel-presets/{id}/name`. Requires: Shipping.ParcelPresets, merchant scope.
- [Parcel presets: restores a previously deleted preset.](https://devportal-simpay-sbx.winkpg.io/docs/api/parcelPresetRestoreDeletedItem.md): `POST /api/shipping/parcel-presets/{id}/restore`. Requires: Shipping.ParcelPresets, Shipping.ParcelPresets.Update, merchant scope.
- [Ship-from origins: retrieves a paged list of origins.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginGetList.md): `GET /api/shipping/origins`. Requires: Shipping.Origins, merchant scope.
- [Ship-from origins: creates an origin. A merchant's first origin becomes its default.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginCreate.md): `POST /api/shipping/origins`. Requires: Shipping.Origins, Shipping.Origins.Create, merchant scope.
- [Ship-from origins: retrieves a continuation-token paged list of origins.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginGetContinuationList.md): `GET /api/shipping/origins/continuation`. Requires: Shipping.Origins, merchant scope.
- [Ship-from origins: counts the origins matching the input.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginGetApproximateTotalCount.md): `GET /api/shipping/origins/continuation/count`. Requires: Shipping.Origins, merchant scope.
- [Ship-from origins: deletes an origin by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginDelete.md): `DELETE /api/shipping/origins/{id}`. Requires: Shipping.Origins, Shipping.Origins.Delete, merchant scope.
- [Ship-from origins: retrieves a single origin by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginGet.md): `GET /api/shipping/origins/{id}`. Requires: Shipping.Origins, merchant scope.
- [Ship-from origins: updates an origin by id.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginUpdate.md): `PUT /api/shipping/origins/{id}`. Requires: Shipping.Origins, Shipping.Origins.Update, merchant scope.
- [Ship-from origins: reports whether the caller may access the origin.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginHasEntityAccess.md): `GET /api/shipping/origins/{id}/access`. Requires: Shipping.Origins, merchant scope.
- [Ship-from origins: returns an origin's display name.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginGetName.md): `GET /api/shipping/origins/{id}/name`. Requires: Shipping.Origins, merchant scope.
- [Ship-from origins: restores a previously deleted origin.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingOriginRestoreDeletedItem.md): `POST /api/shipping/origins/{id}/restore`. Requires: Shipping.Origins, Shipping.Origins.Update, merchant scope.
- [Shipping rate quotes: quotes carrier rates for one lane.](https://devportal-simpay-sbx.winkpg.io/docs/api/shippingRateQuoteGetQuote.md): `POST /api/shipping/rate-quotes`. Requires: Shipping.RateQuotes, merchant scope.

## Surcharging

**Category:** Payments

Merchant credit-card surcharge configuration and notice filing.

- [Surcharging: Whether the non-production waiting-period bypass is available in this host.](https://devportal-simpay-sbx.winkpg.io/docs/api/surchargeConfigurationIsForceEnableAvailable.md): `GET /api/surcharging/configurations/force-enable/available`. Requires: Surcharging.Admin.ForceEnable, merchant scope.
- [Surcharging: Activates surcharging without waiting out the mandatory notice period.](https://devportal-simpay-sbx.winkpg.io/docs/api/surchargeConfigurationForceEnable.md): `POST /api/surcharging/configurations/{merchantId}/force-enable`. Requires: Surcharging.Admin.ForceEnable, merchant scope.
- [Surcharging: Replaces a merchant's per-state restriction table (operator action).](https://devportal-simpay-sbx.winkpg.io/docs/api/surchargeConfigurationUpdateStatePolicies.md): `PUT /api/surcharging/configurations/{merchantId}/state-policies`. Requires: Surcharging.Admin.GlobalSettings, merchant scope.
- [Surcharging: Returns a merchant's effective per-state surcharge posture.](https://devportal-simpay-sbx.winkpg.io/docs/api/surchargeConfigurationGetEffectiveStatePolicies.md): `GET /api/surcharging/configurations/{merchantId}/state-policies/effective`. Requires: Surcharging.Admin.GlobalSettings, merchant scope.

## Tokens

**Category:** Payments

Payment token vault and card-on-file management.

- [List payment tokens](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensGetList.md): `GET /api/tokens`. No permission required.
- [Create payment token](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensCreate.md): `POST /api/tokens`. No permission required.
- [Reports whether a token can be deleted outright.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensCanDelete.md): `POST /api/tokens/can-delete-async`. No permission required.
- [Creates a reusable token from the payment method a previous transaction stored.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensCreateFromTransaction.md): `POST /api/tokens/create-from-transaction-async`. No permission required.
- [Creates a token from card or check details, with no transaction attached.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensCreateStandalone.md): `POST /api/tokens/create-standalone-async`. No permission required.
- [Deactivates a payment token.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensDeactivate.md): `POST /api/tokens/deactivate-async`. No permission required.
- [Retrieves a continuation-based page of PaymentTokens.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensGetContinuationList.md): `POST /api/tokens/list/continuation`. No permission required.
- [Counts the PaymentTokens that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensGetApproximateTotalCount.md): `POST /api/tokens/list/continuation/count`. No permission required.
- [Counts PaymentTokens for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensGetSummaryCounts.md): `POST /api/tokens/list/continuation/summary-counts`. No permission required.
- [Re-enables a token that was deactivated.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensReactivate.md): `POST /api/tokens/reactivate-async`. No permission required.
- [Issues a replacement token that supersedes an existing one.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensRegenerate.md): `POST /api/tokens/regenerate-async`. No permission required.
- [Looks up a payment token by its public identifier within a merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensResolvePaymentToken.md): `POST /api/tokens/resolve-payment-token-async`. No permission required.
- [Delete payment token](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensDelete.md): `DELETE /api/tokens/{id}`. No permission required.
- [Get payment token](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensGet.md): `GET /api/tokens/{id}`. No permission required.
- [Update payment token](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensUpdate.md): `PUT /api/tokens/{id}`. No permission required.
- [Erases the stored card or bank account details behind a token.](https://devportal-simpay-sbx.winkpg.io/docs/api/tokensRedact.md): `POST /api/tokens/{id}/redact`. No permission required.

## Transactions

**Category:** Payments

Payment transaction processing, search, settlement, and reporting.

- [List transactions](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGetList.md): `GET /api/transactions`. Requires: Transactions.Reports, merchant scope.
- [Create transaction](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsCreate.md): `POST /api/transactions`. Requires: Transactions.Payments.Create, merchant scope.
- [Creates a transaction from a consumed hosted payment page session.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsCreateFromHppSession.md): `POST /api/transactions/from-hpp-session`. No permission required.
- [Looks up a transaction by the idempotency key the caller supplied.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGetByIdempotencyKey.md): `POST /api/transactions/get-by-idempotency-key-async`. Requires: Transactions.Reports.View, merchant scope.
- [Retrieves a single transaction by its identifier.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGetTransactionById.md): `POST /api/transactions/get-transaction-by-id-async`. Requires: Transactions.Reports, merchant scope.
- [Summarizes the unsettled transactions on a merchant's processor profile.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGetUnsettledTransactionSummaryByProcessorProfile.md): `POST /api/transactions/get-unsettled-transaction-summary-by-processor-profile-async`. Requires: Transactions.Reports, merchant scope.
- [Retrieves a continuation-based page of Transactions.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGetContinuationList.md): `POST /api/transactions/list/continuation`. Requires: Transactions.Reports, merchant scope.
- [Counts the Transactions that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGetApproximateTotalCount.md): `POST /api/transactions/list/continuation/count`. No permission required.
- [Counts Transactions for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGetSummaryCounts.md): `POST /api/transactions/list/continuation/summary-counts`. Requires: Transactions.Reports, merchant scope.
- [Get transaction by ID](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsGet.md): `GET /api/transactions/{id}`. Requires: Transactions.Reports, merchant scope.
- [Updates only the tags on a transaction without touching other fields.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionsUpdateTags.md): `PUT /api/transactions/{id}/tags`. Requires: Transactions.Reports, merchant scope.
- [Gets a filtered, paged list of batch files.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileGetList.md): `GET /api/transactions/batch-file`. No permission required.
- [Uploads a CSV batch file for transaction processing.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileUploadBatchFile.md): `POST /api/transactions/batch-file/upload`. No permission required.
- [Deletes a batch file and its associated blob storage content.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileDelete.md): `DELETE /api/transactions/batch-file/{id}`. No permission required.
- [Gets a batch file by its unique identifier.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileGet.md): `GET /api/transactions/batch-file/{id}`. No permission required.
- [Cancels a batch file that is pending or in progress.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileCancelProcessing.md): `POST /api/transactions/batch-file/{id}/cancel`. No permission required.
- [Downloads the original uploaded CSV batch file.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileDownloadBatchFile.md): `GET /api/transactions/batch-file/{id}/download`. No permission required.
- [Exports batch processing results as a CSV file.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileExportResults.md): `GET /api/transactions/batch-file/{id}/export-results`. No permission required.
- [Triggers asynchronous processing of a batch file.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchFileTriggerProcessing.md): `POST /api/transactions/batch-file/{id}/trigger-processing`. No permission required.
- [Read the current batch-number state for a merchant + processor without issuing a value.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchSequencePeek.md): `GET /api/transactions/batch-sequence`. Requires: Transactions.Settlement.ManageBatchNumber, merchant scope.
- [Override the next batch number for a merchant + processor.](https://devportal-simpay-sbx.winkpg.io/docs/api/batchSequenceSetNext.md): `POST /api/transactions/batch-sequence`. Requires: Transactions.Settlement.ManageBatchNumber, merchant scope.
- [Approve a held transaction, releasing it to continue into authorization.](https://devportal-simpay-sbx.winkpg.io/docs/api/fraudReviewApprove.md): `POST /api/transactions/{id}/fraud-review/approve`. Requires: Transactions.FraudReview.Disposition, merchant scope.
- [Decline a held transaction, rejecting the payment.](https://devportal-simpay-sbx.winkpg.io/docs/api/fraudReviewDecline.md): `POST /api/transactions/{id}/fraud-review/decline`. Requires: Transactions.FraudReview.Disposition, merchant scope.
- [Execute a follow-up operation on an existing transaction.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionOperationsExecuteOperation.md): `POST /api/transactions/by-merchant/{merchantId}/{transactionId}/operations`. No permission required.
- [Legacy single-id route retained for backward compatibility.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionOperationsExecuteOperationLegacy.md): `POST /api/transactions/{id}/operations` (deprecated). No permission required.
- [Accept a partial approval, keeping the reduced authorization.](https://devportal-simpay-sbx.winkpg.io/docs/api/partialApprovalAccept.md): `POST /api/transactions/{id}/partial-approval/accept`. Requires: Transactions.PartialApproval.Acknowledge, merchant scope.
- [Start a split tender to collect the shortfall on a partial approval.](https://devportal-simpay-sbx.winkpg.io/docs/api/partialApprovalInitiateSplitTender.md): `POST /api/transactions/{id}/partial-approval/split-tender`. Requires: Transactions.PartialApproval.Acknowledge, merchant scope.
- [Void a partial approval, reversing the reduced authorization.](https://devportal-simpay-sbx.winkpg.io/docs/api/partialApprovalVoid.md): `POST /api/transactions/{id}/partial-approval/void`. Requires: Transactions.PartialApproval.Acknowledge, merchant scope.
- [Rolls up the window's transactions by merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionSummaryGetMerchantSummary.md): `GET /api/transactions/reports/merchant-summary`. Requires: Transactions.Reports.Summary, merchant scope.
- [Rolls up the window's transactions by payment type.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionSummaryGetPaymentTypeSummary.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://devportal-simpay-sbx.winkpg.io/docs/api/transactionSettlementOverrideOverride.md): `POST /api/transactions/settlement-override`. Requires: Transactions.Settlement.Override, merchant scope.
- [Returns the full detail of one settlement batch, including the per-payment-type breakdown.](https://devportal-simpay-sbx.winkpg.io/docs/api/settlementReportingGetSettlementBatch.md): `GET /api/transactions/settlement-reports/batches/{settlementBatchId}`. Requires: Transactions.Settlement.ViewHistory, merchant scope.
- [Returns a page of settlement batches matching the supplied filters, newest run first.](https://devportal-simpay-sbx.winkpg.io/docs/api/settlementReportingGetSettlementHistory.md): `GET /api/transactions/settlement-reports/history`. Requires: Transactions.Settlement.ViewHistory, merchant scope.
- [Trigger settlement for a specific merchant.](https://devportal-simpay-sbx.winkpg.io/docs/api/settlementTriggerForMerchant.md): `POST /api/transactions/settlements/merchants/{merchantId}/trigger`. Requires: Transactions.Settlement.Trigger, merchant scope.
- [Returns the merchant's open batch summary.](https://devportal-simpay-sbx.winkpg.io/docs/api/settlementGetOpenBatchesSummary.md): `GET /api/transactions/settlements/open-batches`. Requires: Transactions.Settlement.View, merchant scope.
- [Returns the merchant's terminal settlement runs, newest first.](https://devportal-simpay-sbx.winkpg.io/docs/api/settlementGetRecentSettlementOutcomes.md): `GET /api/transactions/settlements/recent-outcomes`. Requires: Transactions.Settlement.View, merchant scope.
- [Returns whether a manually triggered settlement run has finished.](https://devportal-simpay-sbx.winkpg.io/docs/api/settlementGetSettlementRunState.md): `GET /api/transactions/settlements/run-state`. Requires: Transactions.Settlement.View, merchant scope.
- [Trigger settlement for all eligible merchants.](https://devportal-simpay-sbx.winkpg.io/docs/api/settlementTrigger.md): `POST /api/transactions/settlements/trigger`. Requires: Transactions.Settlement.Trigger, merchant scope.
- [Get the split tender a payment belongs to.](https://devportal-simpay-sbx.winkpg.io/docs/api/splitTenderGetContext.md): `GET /api/transactions/{id}/split-tender`. Requires: Transactions.Reports, merchant scope.
- [Add a payment to a split tender, collecting part of its remaining balance.](https://devportal-simpay-sbx.winkpg.io/docs/api/splitTenderCreateContinuation.md): `POST /api/transactions/{id}/split-tender/continuations`. Requires: Transactions.Payments.Create, merchant scope.

## Transaction Statistics

**Category:** Payments

The filtered transaction-statistics aggregate: count and total amount over every transaction matching a filter, grouped by transaction type, by payment type and by result code.

- [Counts and totals the transactions matching a filter, three ways.](https://devportal-simpay-sbx.winkpg.io/docs/api/transactionStatisticsGetStatistics.md): `POST /api/transactions/reports/statistics`. Requires: Transactions.Reports, merchant scope.

## Usage

**Category:** Reporting & Operations

Metered usage reporting: period summaries, the underlying ledger entries, and the SKU definitions they are metered against.

- [Get a paged dimensional rollup for a SKU.](https://devportal-simpay-sbx.winkpg.io/docs/api/usageReportingGetDimensionalSummary.md): `GET /api/usage/reports/dimensional-summary`. Requires: Usage.Reports, merchant scope.
- [Get paginated merchant ledger entries.](https://devportal-simpay-sbx.winkpg.io/docs/api/usageReportingGetMerchantLedger.md): `GET /api/usage/reports/merchant-ledger`. Requires: Usage.Reports, merchant scope.
- [Get a merchant's usage summary for a given period.](https://devportal-simpay-sbx.winkpg.io/docs/api/usageReportingGetMerchantSummary.md): `GET /api/usage/reports/merchant-summary`. Requires: Usage.Reports, merchant scope.
- [Get per-merchant usage breakdown for a reseller.](https://devportal-simpay-sbx.winkpg.io/docs/api/usageReportingGetResellerMerchantBreakdown.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://devportal-simpay-sbx.winkpg.io/docs/api/usageReportingGetResellerSummary.md): `GET /api/usage/reports/reseller-summary`. Requires: Usage.Reports, merchant scope.
- [List all registered SKU definitions.](https://devportal-simpay-sbx.winkpg.io/docs/api/usageReportingGetSkuDefinitions.md): `GET /api/usage/reports/skus`. Requires: Usage.Skus, merchant scope.
- [List entitlements with optional filters using continuation-token paging.](https://devportal-simpay-sbx.winkpg.io/docs/api/entitlementGetList.md): `GET /api/usage/entitlements`. Requires: Usage.PlatformDefaults, merchant scope.
- [Create a new entitlement.](https://devportal-simpay-sbx.winkpg.io/docs/api/entitlementCreate.md): `POST /api/usage/entitlements`. No permission required.
- [Resolves the effective entitlement at a given scope.](https://devportal-simpay-sbx.winkpg.io/docs/api/entitlementGetEffective.md): `GET /api/usage/entitlements/effective`. Requires: Usage.PlatformDefaults, merchant scope.
- [Delete an entitlement.](https://devportal-simpay-sbx.winkpg.io/docs/api/entitlementDelete.md): `DELETE /api/usage/entitlements/{id}`. No permission required.
- [Get an entitlement by ID.](https://devportal-simpay-sbx.winkpg.io/docs/api/entitlementGet.md): `GET /api/usage/entitlements/{id}`. Requires: Usage.PlatformDefaults, merchant scope.
- [Update an existing entitlement.](https://devportal-simpay-sbx.winkpg.io/docs/api/entitlementUpdate.md): `PUT /api/usage/entitlements/{id}`. No permission required.
- [Export merchant ledger entries.](https://devportal-simpay-sbx.winkpg.io/docs/api/usageReportExportExportLedger.md): `GET /api/usage/reports/ledger/export`. Requires: Usage.Reports.Export, merchant scope.
- [Export the merchant SKU summary.](https://devportal-simpay-sbx.winkpg.io/docs/api/usageReportExportExportSummary.md): `GET /api/usage/reports/summary/export`. Requires: Usage.Reports.Export, merchant scope.

## User Favorites

**Category:** Identity & Access

Per-user favorites API. All reads/writes are scoped to the operating user (impersonated user when impersonating, current user otherwise).

- [Remove (unpin) a favorite for the operating user.](https://devportal-simpay-sbx.winkpg.io/docs/api/userFavoritesRemove.md): `DELETE /api/favorites/user`. Requires: Favorites.Manage, merchant scope.
- [Lists the operating user's favorites.](https://devportal-simpay-sbx.winkpg.io/docs/api/userFavoritesGetMyFavorites.md): `GET /api/favorites/user`. Requires: Favorites.Manage, merchant scope.
- [Pin an entity as a favorite for the operating user.](https://devportal-simpay-sbx.winkpg.io/docs/api/userFavoritesAdd.md): `POST /api/favorites/user`. Requires: Favorites.Manage, merchant scope.
- [Count the operating user's favorites across every entity type.](https://devportal-simpay-sbx.winkpg.io/docs/api/userFavoritesGetCount.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://devportal-simpay-sbx.winkpg.io/docs/api/userFavoritesGetFavoritedIds.md): `GET /api/favorites/user/ids`. Requires: Favorites.Manage, merchant scope.

## Users

**Category:** Identity & Access

Back-office user administration: creating and maintaining users, assigning their roles and organization units, and managing their active sessions.

- [GetAllList for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetAllList.md): `GET /api/account/link-user`. No permission required.
- [List users](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetList.md): `GET /api/identity/users`. Requires: AbpIdentity.Users, host scope.
- [Create new user](https://devportal-simpay-sbx.winkpg.io/docs/api/userCreate.md): `POST /api/identity/users`. Requires: AbpIdentity.Users, AbpIdentity.Users.Create, host scope.
- [GetAllClaimTypes for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetAllClaimTypes.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://devportal-simpay-sbx.winkpg.io/docs/api/userGetApproximateTotalCount.md): `GET /api/identity/users/approximate-count`. Requires: AbpIdentity.Users, host scope.
- [Get assignable roles](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetAssignableRoles.md): `GET /api/identity/users/assignable-roles`. Requires: AbpIdentity.Users, host scope.
- [GetAvailableOrganizationUnits for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetAvailableOrganizationUnits.md): `GET /api/identity/users/available-organization-units`. Requires: AbpIdentity.Users, host scope.
- [Find user by email](https://devportal-simpay-sbx.winkpg.io/docs/api/userFindByEmail.md): `GET /api/identity/users/by-email/{email}`. Requires: AbpIdentity.Users, host scope.
- [Find user by username](https://devportal-simpay-sbx.winkpg.io/docs/api/userFindByUsername.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://devportal-simpay-sbx.winkpg.io/docs/api/userGetContinuationList.md): `GET /api/identity/users/continuation-list`. Requires: AbpIdentity.Users, host scope.
- [GetDownloadToken for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetDownloadToken.md): `GET /api/identity/users/download-token`. Requires: AbpIdentity.Users, host scope.
- [GetListAsCsvFile for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetListAsCsvFile.md): `GET /api/identity/users/export-as-csv`. No permission required.
- [GetListAsExcelFile for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetListAsExcelFile.md): `GET /api/identity/users/export-as-excel`. No permission required.
- [GetExternalLoginProviders for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetExternalLoginProviders.md): `GET /api/identity/users/external-login-Providers`. Requires: AbpIdentity.Users, AbpIdentity.Users.Import, host scope.
- [Import external user](https://devportal-simpay-sbx.winkpg.io/docs/api/userImportExternalUser.md): `POST /api/identity/users/import-external-user`. Requires: AbpIdentity.Users, AbpIdentity.Users.Import, host scope.
- [ImportUsersFromFile for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userImportUsersFromFile.md): `POST /api/identity/users/import-users-from-file`. Requires: AbpIdentity.Users, AbpIdentity.Users.Import, host scope.
- [GetOrganizationUnitLookup for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetOrganizationUnitLookup.md): `GET /api/identity/users/lookup/organization-units`. Requires: AbpIdentity.Users, host scope.
- [GetRoleLookup for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetRoleLookup.md): `GET /api/identity/users/lookup/roles`. Requires: AbpIdentity.Users, host scope.
- [Delete user](https://devportal-simpay-sbx.winkpg.io/docs/api/userDelete.md): `DELETE /api/identity/users/{id}`. Requires: AbpIdentity.Users, AbpIdentity.Users.Delete, host scope.
- [Get user by ID](https://devportal-simpay-sbx.winkpg.io/docs/api/userGet.md): `GET /api/identity/users/{id}`. Requires: AbpIdentity.Users, host scope.
- [Update user](https://devportal-simpay-sbx.winkpg.io/docs/api/userUpdate.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://devportal-simpay-sbx.winkpg.io/docs/api/userHasEntityAccess.md): `GET /api/identity/users/{id}/access`. Requires: AbpIdentity.Users, host scope.
- [UpdatePassword for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userUpdatePassword.md): `PUT /api/identity/users/{id}/change-password`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [GetClaims for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetClaims.md): `GET /api/identity/users/{id}/claims`. Requires: AbpIdentity.Users, host scope.
- [Update user claims](https://devportal-simpay-sbx.winkpg.io/docs/api/userUpdateClaims.md): `PUT /api/identity/users/{id}/claims`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [Lock user account](https://devportal-simpay-sbx.winkpg.io/docs/api/userLock.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://devportal-simpay-sbx.winkpg.io/docs/api/userGetName.md): `GET /api/identity/users/{id}/name`. Requires: AbpIdentity.Users, host scope.
- [Get user organization units](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetOrganizationUnits.md): `GET /api/identity/users/{id}/organization-units`. Requires: AbpIdentity.Users, host scope.
- [Restores a deleted user by ID.](https://devportal-simpay-sbx.winkpg.io/docs/api/userRestoreDeletedItem.md): `POST /api/identity/users/{id}/restore`. Requires: AbpIdentity.Users, host scope.
- [Get user roles](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetRoles.md): `GET /api/identity/users/{id}/roles`. Requires: AbpIdentity.Users, host scope.
- [Update user roles](https://devportal-simpay-sbx.winkpg.io/docs/api/userUpdateRoles.md): `PUT /api/identity/users/{id}/roles`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [GetTwoFactorEnabled for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userGetTwoFactorEnabled.md): `GET /api/identity/users/{id}/two-factor-enabled`. Requires: AbpIdentity.Users, host scope.
- [SetTwoFactorEnabled for User](https://devportal-simpay-sbx.winkpg.io/docs/api/userSetTwoFactorEnabled.md): `PUT /api/identity/users/{id}/two-factor/{enabled}`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [Unlock user account](https://devportal-simpay-sbx.winkpg.io/docs/api/userUnlock.md): `PUT /api/identity/users/{id}/unlock`. Requires: AbpIdentity.Users, AbpIdentity.Users.Update, host scope.
- [List sessions](https://devportal-simpay-sbx.winkpg.io/docs/api/sessionsGetList.md): `GET /api/account/sessions`. No permission required.
- [Revoke for Sessions](https://devportal-simpay-sbx.winkpg.io/docs/api/sessionsRevoke.md): `DELETE /api/account/sessions/{id}`. No permission required.
- [Get session](https://devportal-simpay-sbx.winkpg.io/docs/api/sessionsGet.md): `GET /api/account/sessions/{id}`. No permission required.
- [Signs a user out of every session.](https://devportal-simpay-sbx.winkpg.io/docs/api/sessionsRevokeAllForUser.md): `POST /api/identity/sessions/revoke-all`. Requires: AbpIdentity.Sessions, AbpIdentity.Sessions.RevokeAll, host scope.

## Wallets

**Category:** Payments

Digital wallet setup and runtime: provider registrations and their platform credentials, Apple Pay certificate provisioning, merchant sessions, encrypted token receipt and the domain association file, Paze certificates and public JWKS, and the checkout snapshot a payment page reads to decide which wallets to offer.

- [Apple Pay: serve the domain association file.](https://devportal-simpay-sbx.winkpg.io/docs/api/applePayDomainAssociationGet.md): `GET /.well-known/apple-developer-merchantid-domain-association`. No permission required.
- [Checkout Snapshot: returns the storefront-safe snapshot for the (provider, merchant) pair.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletCheckoutSnapshotGetSnapshot.md): `GET /api/payment-tokenization/checkout-snapshot/{providerType}/{merchantId}`. No permission required.
- [Paze: public JWKS for an environment.](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeJwksGetWellKnown.md): `GET /.well-known/paze/{environment}/jwks.json`. No permission required.
- [Paze: complete the Production round-trip by merging a CA-signed certificate.](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeCertificatesComplete.md): `POST /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/complete`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Paze: download the pending CSR (Production).](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeCertificatesGetCsrPem.md): `GET /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/csr`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Paze: generate or regenerate a certificate.](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeCertificatesGenerate.md): `POST /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/generate`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Paze: cancel a pending CSR round-trip.](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeCertificatesCancelPending.md): `DELETE /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/pending`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Paze: download the active public certificate to register with Paze.](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeCertificatesGetPublicCertificatePem.md): `GET /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/public`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Paze: get the live lifecycle status.](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeCertificatesGetStatus.md): `GET /api/payment-tokenization/wallet-providers/paze/certificates/{environment}/status`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Paze: admin preview of an environment's JWKS, for verifying it before registering the URL with Paze.](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeJwksGetForEnvironment.md): `GET /api/payment-tokenization/wallet-providers/paze/jwks/{environment}`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Paze: download an environment's JWKS as a `.json` file attachment (admin, from the Settings panel).](https://devportal-simpay-sbx.winkpg.io/docs/api/pazeJwksDownload.md): `GET /api/payment-tokenization/wallet-providers/paze/jwks/{environment}/download`. Requires: PaymentTokenization.SettingManagement, merchant scope.
- [Get a list of WalletProviderRegistrations](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersGetList.md): `GET /api/payment-tokenization/wallet-providers`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Create a WalletProviderRegistration](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersCreate.md): `POST /api/payment-tokenization/wallet-providers`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Create, merchant scope.
- [Retrieves a continuation-based page of WalletProviderRegistrations.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersGetContinuationList.md): `POST /api/payment-tokenization/wallet-providers/list/continuation`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Counts the WalletProviderRegistrations that match a filter.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersGetApproximateTotalCount.md): `POST /api/payment-tokenization/wallet-providers/list/continuation/count`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Counts WalletProviderRegistrations for several filters at once.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersGetSummaryCounts.md): `POST /api/payment-tokenization/wallet-providers/list/continuation/summary-counts`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Reads the primary platform-level registration for a wallet provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersGetPlatform.md): `GET /api/payment-tokenization/wallet-providers/platform/{providerType}`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Lists every wallet provider this environment supports.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersListProviders.md): `GET /api/payment-tokenization/wallet-providers/providers`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Delete a WalletProviderRegistration](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersDelete.md): `DELETE /api/payment-tokenization/wallet-providers/{id}`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Delete, merchant scope.
- [Get a WalletProviderRegistration](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersGet.md): `GET /api/payment-tokenization/wallet-providers/{id}`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Update a WalletProviderRegistration](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersUpdate.md): `PUT /api/payment-tokenization/wallet-providers/{id}`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.
- [Check WalletProviderRegistration access](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersHasEntityAccess.md): `GET /api/payment-tokenization/wallet-providers/{id}/access`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Removes domains from a merchant's wallet registration.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersUnregisterDomains.md): `DELETE /api/payment-tokenization/wallet-providers/{id}/domains`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.
- [Get a WalletProviderRegistration name by id](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersGetName.md): `GET /api/payment-tokenization/wallet-providers/{id}/name`. Requires: PaymentTokenization.PaymentTokenizations, merchant scope.
- [Restore a deleted WalletProviderRegistration](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersRestoreDeletedItem.md): `POST /api/payment-tokenization/wallet-providers/{id}/restore`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.
- [Refreshes a registration from the wallet provider.](https://devportal-simpay-sbx.winkpg.io/docs/api/walletProvidersSyncFromProvider.md): `POST /api/payment-tokenization/wallet-providers/{id}/sync`. Requires: PaymentTokenization.PaymentTokenizations, PaymentTokenization.PaymentTokenizations.Update, merchant scope.

## See also

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