Polarex.Benefits (Polarex v0.2.3)
View SourceProvides API endpoints related to benefits
Summary
Functions
Create Benefit
Delete Benefit
Get Benefit
List Benefit Grants
List Benefits
Update Benefit
Functions
@spec benefits_create( Polarex.BenefitCustomCreate.t() | Polarex.BenefitDiscordCreate.t() | Polarex.BenefitDownloadablesCreate.t() | Polarex.BenefitGitHubRepositoryCreate.t() | Polarex.BenefitLicenseKeysCreate.t() | Polarex.BenefitMeterCreditCreate.t(), keyword() ) :: {:ok, Polarex.BenefitCustom.t() | Polarex.BenefitDiscord.t() | Polarex.BenefitDownloadables.t() | Polarex.BenefitGitHubRepository.t() | Polarex.BenefitLicenseKeys.t() | Polarex.BenefitMeterCredit.t()} | {:error, Polarex.HTTPValidationError.t()}
Create Benefit
Create a benefit.
Scopes: benefits:write
@spec benefits_delete( String.t(), keyword() ) :: :ok | {:error, Polarex.HTTPValidationError.t() | Polarex.NotPermitted.t() | Polarex.ResourceNotFound.t()}
Delete Benefit
Delete a benefit.
[!WARNING] Every grants associated with the benefit will be revoked. Users will lose access to the benefit.
Scopes: benefits:write
@spec benefits_get( String.t(), keyword() ) :: {:ok, Polarex.BenefitCustom.t() | Polarex.BenefitDiscord.t() | Polarex.BenefitDownloadables.t() | Polarex.BenefitGitHubRepository.t() | Polarex.BenefitLicenseKeys.t() | Polarex.BenefitMeterCredit.t()} | {:error, Polarex.HTTPValidationError.t() | Polarex.ResourceNotFound.t()}
Get Benefit
Get a benefit by ID.
Scopes: benefits:read
benefits:write
@spec benefits_grants( String.t(), keyword() ) :: {:ok, Polarex.ListResourceBenefitGrant.t()} | {:error, Polarex.HTTPValidationError.t() | Polarex.ResourceNotFound.t()}
List Benefit Grants
List the individual grants for a benefit.
It's especially useful to check if a user has been granted a benefit.
Scopes: benefits:read
benefits:write
Options
is_granted
: Filter by granted status. Iftrue
, only granted benefits will be returned. Iffalse
, only revoked benefits will be returned.customer_id
: Filter by customer.page
: Page number, defaults to 1.limit
: Size of a page, defaults to 10. Maximum is 100.
@spec benefits_list(keyword()) :: {:ok, Polarex.ListResourceBenefit.t()} | {:error, Polarex.HTTPValidationError.t()}
List Benefits
List benefits.
Scopes: benefits:read
benefits:write
Options
organization_id
: Filter by organization ID.type
: Filter by benefit type.query
: Filter by description.page
: Page number, defaults to 1.limit
: Size of a page, defaults to 10. Maximum is 100.sorting
: Sorting criterion. Several criteria can be used simultaneously and will be applied in order. Add a minus sign-
before the criteria name to sort by descending order.
@spec benefits_update( String.t(), Polarex.BenefitCustomUpdate.t() | Polarex.BenefitDiscordUpdate.t() | Polarex.BenefitDownloadablesUpdate.t() | Polarex.BenefitGitHubRepositoryUpdate.t() | Polarex.BenefitLicenseKeysUpdate.t() | Polarex.BenefitMeterCreditUpdate.t(), keyword() ) :: {:ok, Polarex.BenefitCustom.t() | Polarex.BenefitDiscord.t() | Polarex.BenefitDownloadables.t() | Polarex.BenefitGitHubRepository.t() | Polarex.BenefitLicenseKeys.t() | Polarex.BenefitMeterCredit.t()} | {:error, Polarex.HTTPValidationError.t() | Polarex.ResourceNotFound.t()}
Update Benefit
Update a benefit.
Scopes: benefits:write