Totogi's Upcoming Charging as a Service API
Previewing the New Balance Management Feature!
Our latest API introduces a comprehensive Balance Management Feature, enhancing the way balances are maintained, configured, and utilized. Here is a list of queries and mutations that will be added or primarily modified with Balance Management Feature;
- createBalanceType
- getBalanceType
- updateBalanceType
- deleteBalanceType
- getBalanceTypeCounters
- updateBalanceTypeCounter
- deleteBalanceTypeCounter
- updateAccountBalanceTypeCounter
- getAccountBalanceTypeCounters
- deleteAccountBalanceTypeCounter
- getBalanceTypes
- createBalance
- updateBalance
- deleteBalance
Don't forget to check Totogi What's new? from time to time for more insights on what is coming with Balance Management feature and how you can benefit from it.
IMPORTANT: It's important to note that the implementation of this feature is still ongoing. As such, the current state of the API may not be its final form. We anticipate possible minor adjustments as we progress through the next phases of implementation. Rest assured, any modifications or updates will be promptly communicated here, ensuring you stay informed every step of the way.
API Endpoints
Coming Soon!
Version
generated at 2023-12-06T07:28:25Z
Queries
getAccount
Description
Returns an account for a provider by an account ID.
Response
Returns an AccountResult
Example
Query
query getAccount(
$providerId: ID!,
$accountId: ID!,
$balanceTypeIds: [ID!]
) {
getAccount(
providerId: $providerId,
accountId: $accountId,
balanceTypeIds: $balanceTypeIds
) {
... on Account {
...AccountFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"providerId": "4",
"accountId": 4,
"balanceTypeIds": [4]
}
Response
{"data": {"getAccount": Account}}
getAccountBalanceTypeCounters
Description
Retrieve Balance Type Counter notifications configured for an account.
Response
Returns an AccountBalanceTypeCountersResult
Arguments
| Name | Description |
|---|---|
input - GetAccountBalanceTypeCountersInput!
|
Example
Query
query getAccountBalanceTypeCounters($input: GetAccountBalanceTypeCountersInput!) {
getAccountBalanceTypeCounters(input: $input) {
... on AccountNotFound {
...AccountNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on AccountBalanceTypeCountersPayload {
...AccountBalanceTypeCountersPayloadFragment
}
... on AccountBalanceTypeCounterNotFound {
...AccountBalanceTypeCounterNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetAccountBalanceTypeCountersInput}
Response
{
"data": {
"getAccountBalanceTypeCounters": AccountNotFound
}
}
getAccountCohort
Description
Fetch an Account Cohort by ID and provider ID.
Response
Returns a GetAccountCohortResult
Arguments
| Name | Description |
|---|---|
input - GetAccountCohortInput!
|
Example
Query
query getAccountCohort($input: GetAccountCohortInput!) {
getAccountCohort(input: $input) {
... on AccountCohort {
...AccountCohortFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on AccountCohortNotFound {
...AccountCohortNotFoundFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetAccountCohortInput}
Response
{"data": {"getAccountCohort": AccountCohort}}
getAccountCohorts
Description
Fetch a list of Account Cohorts by provider ID with pagination.
Response
Returns a GetAccountCohortsResult
Arguments
| Name | Description |
|---|---|
input - GetAccountCohortsInput!
|
Example
Query
query getAccountCohorts($input: GetAccountCohortsInput!) {
getAccountCohorts(input: $input) {
... on AccountCohortConnection {
...AccountCohortConnectionFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetAccountCohortsInput}
Response
{"data": {"getAccountCohorts": AccountCohortConnection}}
getBalanceType
Description
Gets the balance type information of a specific balance type ID.
Response
Returns a GetBalanceTypeResult
Arguments
| Name | Description |
|---|---|
getBalanceTypeInput - GetBalanceTypeInput!
|
Includes the provider ID and balance type ID. |
Example
Query
query getBalanceType($getBalanceTypeInput: GetBalanceTypeInput!) {
getBalanceType(getBalanceTypeInput: $getBalanceTypeInput) {
... on BalanceTypePayload {
...BalanceTypePayloadFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"getBalanceTypeInput": GetBalanceTypeInput}
Response
{"data": {"getBalanceType": BalanceTypePayload}}
getBalanceTypeCounters
Description
Retrieve Balance Type Counter notifications based on the provided input parameters. At least one value must be supplied.
Response
Returns a GetBalanceTypeCountersResult
Arguments
| Name | Description |
|---|---|
input - GetBalanceTypeCountersInput!
|
Example
Query
query getBalanceTypeCounters($input: GetBalanceTypeCountersInput!) {
getBalanceTypeCounters(input: $input) {
... on BalanceTypeCountersPayload {
...BalanceTypeCountersPayloadFragment
}
... on BalanceTypeCounterNotFound {
...BalanceTypeCounterNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetBalanceTypeCountersInput}
Response
{
"data": {
"getBalanceTypeCounters": BalanceTypeCountersPayload
}
}
getBalanceTypes
Description
Gets the balance type information of a list or all balance type IDs. If none is provided, all are returned. If some are provided, the ones that are found are returned.
Response
Returns a GetBalanceTypesResult
Arguments
| Name | Description |
|---|---|
getBalanceTypesInput - GetBalanceTypesInput!
|
Includes the provider ID and an optional list of balance type IDs. |
Example
Query
query getBalanceTypes($getBalanceTypesInput: GetBalanceTypesInput!) {
getBalanceTypes(getBalanceTypesInput: $getBalanceTypesInput) {
... on GetBalanceTypesPayload {
...GetBalanceTypesPayloadFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"getBalanceTypesInput": GetBalanceTypesInput}
Response
{"data": {"getBalanceTypes": GetBalanceTypesPayload}}
getBulkMetadataJobStatus
Description
Get the status of a bulk metadata job.
Response
Returns a GetBulkUploadMetadataResult!
Arguments
| Name | Description |
|---|---|
input - GetBulkUploadMetadataInput!
|
Example
Query
query getBulkMetadataJobStatus($input: GetBulkUploadMetadataInput!) {
getBulkMetadataJobStatus(input: $input) {
... on GetBulkUploadMetadataPayload {
...GetBulkUploadMetadataPayloadFragment
}
... on BulkUploadMetadataJobNotFound {
...BulkUploadMetadataJobNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetBulkUploadMetadataInput}
Response
{
"data": {
"getBulkMetadataJobStatus": GetBulkUploadMetadataPayload
}
}
getCampaign
Description
Get details of a specific campaign.
Response
Returns a GetCampaignResult!
Arguments
| Name | Description |
|---|---|
input - GetCampaignInput!
|
Example
Query
query getCampaign($input: GetCampaignInput!) {
getCampaign(input: $input) {
... on Campaign {
...CampaignFragment
}
... on CampaignNotFound {
...CampaignNotFoundFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetCampaignInput}
Response
{"data": {"getCampaign": Campaign}}
getCampaignStatistics
Description
Retrieve Campaign Statistics.
Response
Returns a CampaignStatisticsResult
Arguments
| Name | Description |
|---|---|
input - GetCampaignStatisticsInput!
|
Example
Query
query getCampaignStatistics($input: GetCampaignStatisticsInput!) {
getCampaignStatistics(input: $input) {
... on CampaignStatisticsPayload {
...CampaignStatisticsPayloadFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on CampaignNotFound {
...CampaignNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetCampaignStatisticsInput}
Response
{
"data": {
"getCampaignStatistics": CampaignStatisticsPayload
}
}
getCampaigns
Description
Get a list of campaigns with pagination.
Response
Returns a GetCampaignsResult!
Arguments
| Name | Description |
|---|---|
input - GetCampaignsInput!
|
Example
Query
query getCampaigns($input: GetCampaignsInput!) {
getCampaigns(input: $input) {
... on CampaignConnection {
...CampaignConnectionFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": GetCampaignsInput}
Response
{"data": {"getCampaigns": CampaignConnection}}
getCurrentUser
Description
Gets info for the currently logged in user
Response
Returns a GetUserPayload
Example
Query
query getCurrentUser {
getCurrentUser {
providerId
userId
email
name
roleGroupMemberships
profilePicture {
...ProfilePhotoFragment
}
phoneNumber
jobTitle
softwareMfaEnabled
expiry
alertInterval
}
}
Response
{
"data": {
"getCurrentUser": {
"providerId": "4",
"userId": 4,
"email": AWSEmail,
"name": "xyz789",
"roleGroupMemberships": ["Account_Query"],
"profilePicture": ProfilePhoto,
"phoneNumber": AWSPhone,
"jobTitle": "xyz789",
"softwareMfaEnabled": true,
"expiry": AWSDateTime,
"alertInterval": 123
}
}
}
getDeployedFieldMappings
Description
Gets deployed field mappings for a provider sorted by when they will be applied.
Response
Returns a DeployedFieldMappingConnection
Example
Query
query getDeployedFieldMappings(
$providerId: ID!,
$first: Int!,
$after: String
) {
getDeployedFieldMappings(
providerId: $providerId,
first: $first,
after: $after
) {
edges {
...DeployedFieldMappingEdgeFragment
}
pageInfo {
...PageInfoFragment
}
}
}
Variables
{
"providerId": "4",
"first": 123,
"after": "abc123"
}
Response
{
"data": {
"getDeployedFieldMappings": {
"edges": [DeployedFieldMappingEdge],
"pageInfo": PageInfo
}
}
}
getDevice
Description
Returns a device for a provider by a device ID.
Response
Returns a DeviceResult
Example
Query
query getDevice(
$providerId: ID!,
$deviceId: ID!
) {
getDevice(
providerId: $providerId,
deviceId: $deviceId
) {
... on Device {
...DeviceFragment
}
... on DeviceNotFound {
...DeviceNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"providerId": "4",
"deviceId": "4"
}
Response
{"data": {"getDevice": Device}}
getEventDataRecordsByAccount
Description
Gets a list of event data records for an account with pagination.
Response
Returns an EventDataRecordAccountConnectionResult
Arguments
| Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
accountId - ID!
|
Account ID. |
first - Int!
|
Returns the first n elements from the list. |
after - String
|
Returns the elements in the list that come after the specified cursor. |
filterBy - EventDataRecordFilter
|
Filtering options for event data records returned in the connection. |
Example
Query
query getEventDataRecordsByAccount(
$providerId: ID!,
$accountId: ID!,
$first: Int!,
$after: String,
$filterBy: EventDataRecordFilter
) {
getEventDataRecordsByAccount(
providerId: $providerId,
accountId: $accountId,
first: $first,
after: $after,
filterBy: $filterBy
) {
... on EventDataRecordAccountConnection {
...EventDataRecordAccountConnectionFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"providerId": 4,
"accountId": "4",
"first": 123,
"after": "abc123",
"filterBy": EventDataRecordFilter
}
Response
{
"data": {
"getEventDataRecordsByAccount": EventDataRecordAccountConnection
}
}
getEventDataRecordsByDevice
Description
Gets a list of event data records for a device with pagination.
Response
Returns an EventDataRecordDeviceConnectionResult
Arguments
| Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
deviceId - ID!
|
Device ID. |
first - Int!
|
Returns the first n elements from the list. |
after - String
|
Returns the elements in the list that come after the specified cursor. |
filterBy - EventDataRecordFilter
|
Filtering options for event data records returned in the connection. |
Example
Query
query getEventDataRecordsByDevice(
$providerId: ID!,
$deviceId: ID!,
$first: Int!,
$after: String,
$filterBy: EventDataRecordFilter
) {
getEventDataRecordsByDevice(
providerId: $providerId,
deviceId: $deviceId,
first: $first,
after: $after,
filterBy: $filterBy
) {
... on EventDataRecordDeviceConnection {
...EventDataRecordDeviceConnectionFragment
}
... on DeviceNotFound {
...DeviceNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"providerId": 4,
"deviceId": "4",
"first": 987,
"after": "xyz789",
"filterBy": EventDataRecordFilter
}
Response
{
"data": {
"getEventDataRecordsByDevice": EventDataRecordDeviceConnection
}
}
getFieldMappings
Description
Gets not deployed field mappings for a provider.
Response
Returns a FieldMappingConnection
Example
Query
query getFieldMappings(
$providerId: ID!,
$first: Int!,
$after: String
) {
getFieldMappings(
providerId: $providerId,
first: $first,
after: $after
) {
edges {
...FieldMappingEdgeFragment
}
pageInfo {
...PageInfoFragment
}
}
}
Variables
{
"providerId": 4,
"first": 987,
"after": "abc123"
}
Response
{
"data": {
"getFieldMappings": {
"edges": [FieldMappingEdge],
"pageInfo": PageInfo
}
}
}
getMyExportJobs
Response
Returns a GetMyExportJobsResult
Arguments
| Name | Description |
|---|---|
getMyExportJobsInput - GetMyExportJobsInput!
|
Example
Query
query getMyExportJobs($getMyExportJobsInput: GetMyExportJobsInput!) {
getMyExportJobs(getMyExportJobsInput: $getMyExportJobsInput) {
... on GetMyExportJobsPayload {
...GetMyExportJobsPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"getMyExportJobsInput": GetMyExportJobsInput}
Response
{"data": {"getMyExportJobs": GetMyExportJobsPayload}}
getMyProviderConfig
Description
Gets config of a specific tenant for the logged in user
Response
Returns a GetMyProviderConfigResult
Example
Query
query getMyProviderConfig {
getMyProviderConfig {
... on ProviderConfig {
...ProviderConfigFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Response
{"data": {"getMyProviderConfig": ProviderConfig}}
getMyRestoreJobs
Response
Returns a GetMyRestoreJobsResult
Arguments
| Name | Description |
|---|---|
getMyRestoreJobsInput - GetMyRestoreJobsInput!
|
Example
Query
query getMyRestoreJobs($getMyRestoreJobsInput: GetMyRestoreJobsInput!) {
getMyRestoreJobs(getMyRestoreJobsInput: $getMyRestoreJobsInput) {
... on GetMyRestoreJobsPayload {
...GetMyRestoreJobsPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"getMyRestoreJobsInput": GetMyRestoreJobsInput}
Response
{"data": {"getMyRestoreJobs": GetMyRestoreJobsPayload}}
getOffers
Description
Returns the list of Offers for a provider sorted by when they were created or updated.
Response
Returns a GetOffersResult
Example
Query
query getOffers(
$providerId: ID!,
$first: Int!,
$after: String
) {
getOffers(
providerId: $providerId,
first: $first,
after: $after
) {
... on OfferConnection {
...OfferConnectionFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"providerId": 4,
"first": 123,
"after": "xyz789"
}
Response
{"data": {"getOffers": OfferConnection}}
getPlan
Description
Gets a plan for a provider.
Response
Returns a PlanResult
Example
Query
query getPlan(
$providerId: ID!,
$planId: ID!
) {
getPlan(
providerId: $providerId,
planId: $planId
) {
... on Plan {
...PlanFragment
}
... on PlanNotFound {
...PlanNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"providerId": 4, "planId": "4"}
Response
{"data": {"getPlan": Plan}}
getPlanServices
Description
Gets a list of plan services for a provider with pagination.
Response
Returns a PlanServiceConnection
Example
Query
query getPlanServices(
$providerId: ID!,
$first: Int!,
$after: String
) {
getPlanServices(
providerId: $providerId,
first: $first,
after: $after
) {
edges {
...PlanServiceEdgeFragment
}
pageInfo {
...PageInfoFragment
}
}
}
Variables
{
"providerId": "4",
"first": 987,
"after": "abc123"
}
Response
{
"data": {
"getPlanServices": {
"edges": [PlanServiceEdge],
"pageInfo": PageInfo
}
}
}
getPlanVersion
Description
Gets a plan version for a provider.
Response
Returns a PlanVersionResult
Example
Query
query getPlanVersion(
$providerId: ID!,
$planVersionId: ID!
) {
getPlanVersion(
providerId: $providerId,
planVersionId: $planVersionId
) {
... on PlanVersion {
...PlanVersionFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"providerId": 4, "planVersionId": 4}
Response
{"data": {"getPlanVersion": PlanVersion}}
getPlans
Description
Gets a list of plans for a provider with pagination.
Response
Returns a PlanConnection
Example
Query
query getPlans(
$providerId: ID!,
$first: Int!,
$after: String,
$orderBy: PlanOrder
) {
getPlans(
providerId: $providerId,
first: $first,
after: $after,
orderBy: $orderBy
) {
edges {
...PlanEdgeFragment
}
pageInfo {
...PageInfoFragment
}
}
}
Variables
{
"providerId": "4",
"first": 123,
"after": "abc123",
"orderBy": PlanOrder
}
Response
{
"data": {
"getPlans": {
"edges": [PlanEdge],
"pageInfo": PageInfo
}
}
}
getRatingGroupHierarchy
Description
Gets rating group hierarchy for a provider.
Response
Returns a RatingGroupResult
Arguments
| Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
Example
Query
query getRatingGroupHierarchy($providerId: ID!) {
getRatingGroupHierarchy(providerId: $providerId) {
... on RatingGroup {
...RatingGroupFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"providerId": 4}
Response
{"data": {"getRatingGroupHierarchy": RatingGroup}}
getRelatedAccountsByDevice
Description
Returns a list of all parent accounts for a provided device ID.
Response
Returns a GetRelatedAccountsByDeviceResult
Example
Query
query getRelatedAccountsByDevice(
$providerId: ID!,
$deviceId: ID!
) {
getRelatedAccountsByDevice(
providerId: $providerId,
deviceId: $deviceId
) {
... on GetRelatedAccountsByDevicePayload {
...GetRelatedAccountsByDevicePayloadFragment
}
... on DeviceNotFound {
...DeviceNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"providerId": 4, "deviceId": 4}
Response
{
"data": {
"getRelatedAccountsByDevice": GetRelatedAccountsByDevicePayload
}
}
getRules
Description
Gets a list of rules for a provider with pagination.
Response
Returns a RuleConnection
Example
Query
query getRules(
$providerId: ID!,
$first: Int!,
$after: String
) {
getRules(
providerId: $providerId,
first: $first,
after: $after
) {
edges {
...RuleEdgeFragment
}
pageInfo {
...PageInfoFragment
}
}
}
Variables
{
"providerId": 4,
"first": 123,
"after": "xyz789"
}
Response
{
"data": {
"getRules": {
"edges": [RuleEdge],
"pageInfo": PageInfo
}
}
}
getSGSNTable
Description
Gets the SGSN table for the provider.
Response
Returns an SGSNTableResult
Arguments
| Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
Example
Query
query getSGSNTable($providerId: ID!) {
getSGSNTable(providerId: $providerId) {
... on SGSNTable {
...SGSNTableFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"providerId": "4"}
Response
{"data": {"getSGSNTable": SGSNTable}}
getSettings
Description
Gets settings for a provider.
Response
Returns a SettingsResult
Arguments
| Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
Example
Query
query getSettings($providerId: ID!) {
getSettings(providerId: $providerId) {
... on Settings {
...SettingsFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"providerId": "4"}
Response
{"data": {"getSettings": Settings}}
getUser
Description
Gets a user for the given input, or returns a UserNotFound error
Response
Returns a GetUserResult
Arguments
| Name | Description |
|---|---|
getUserInput - GetUserInput!
|
Get user input |
Example
Query
query getUser($getUserInput: GetUserInput!) {
getUser(getUserInput: $getUserInput) {
... on GetUserPayload {
...GetUserPayloadFragment
}
... on UserNotFound {
...UserNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"getUserInput": GetUserInput}
Response
{"data": {"getUser": GetUserPayload}}
listUsers
Description
Lists the users for the given provider ID.
Response
Returns a ListUsersResult
Example
Query
query listUsers(
$providerId: ID!,
$first: Int!,
$after: String
) {
listUsers(
providerId: $providerId,
first: $first,
after: $after
) {
... on ListUsersConnection {
...ListUsersConnectionFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"providerId": "4",
"first": 987,
"after": "xyz789"
}
Response
{"data": {"listUsers": ListUsersConnection}}
Mutations
addWhitelistIP
Description
Adds a whitelist IP
Response
Returns an AddWhitelistIpResult
Arguments
| Name | Description |
|---|---|
input - IpRestrictionInput!
|
Payload to whitelist an IP |
Example
Query
mutation addWhitelistIP($input: IpRestrictionInput!) {
addWhitelistIP(input: $input) {
... on IpRestrictionPayload {
...IpRestrictionPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": IpRestrictionInput}
Response
{"data": {"addWhitelistIP": IpRestrictionPayload}}
archivePlanVersion
Description
Archives plan version if it is suspended with no subscribed accounts.
Response
Returns an ArchivePlanVersionResult!
Arguments
| Name | Description |
|---|---|
input - ArchivePlanVersionInput!
|
Parameters for DeletePlanVersion. |
Example
Query
mutation archivePlanVersion($input: ArchivePlanVersionInput!) {
archivePlanVersion(input: $input) {
... on ArchivePlanVersionPayload {
...ArchivePlanVersionPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on PlanVersionWrongTransition {
...PlanVersionWrongTransitionFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": ArchivePlanVersionInput}
Response
{
"data": {
"archivePlanVersion": ArchivePlanVersionPayload
}
}
bulkUploadMetadata
Description
Bulk upload metadata for Accounts provided by customer
Response
Returns a BulkUploadMetadataResult
Arguments
| Name | Description |
|---|---|
input - BulkUploadMetadataInput!
|
Example
Query
mutation bulkUploadMetadata($input: BulkUploadMetadataInput!) {
bulkUploadMetadata(input: $input) {
... on BulkUploadMetadataPayload {
...BulkUploadMetadataPayloadFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": BulkUploadMetadataInput}
Response
{
"data": {
"bulkUploadMetadata": BulkUploadMetadataPayload
}
}
cancelPlanSubscription
Description
Cancels existing assignment of a plan to an account. If the parameters 'to' and 'from' are not specified, it cancels the first matching plan. If it is an indefinite plan, then 'to' and 'from' should be specified to get a match.
Response
Returns a CancelPlanVersionSubscriptionResult!
Arguments
| Name | Description |
|---|---|
input - CancelPlanSubscriptionInput!
|
Parameters for CancelPlanSubscription. |
Example
Query
mutation cancelPlanSubscription($input: CancelPlanSubscriptionInput!) {
cancelPlanSubscription(input: $input) {
... on CancelPlanVersionSubscriptionPayload {
...CancelPlanVersionSubscriptionPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on SubscriptionNotFound {
...SubscriptionNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on MultipleSubscriptions {
...MultipleSubscriptionsFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CancelPlanSubscriptionInput}
Response
{
"data": {
"cancelPlanSubscription": CancelPlanVersionSubscriptionPayload
}
}
copyPlan
Description
Creates a new plan out of an existing one.
Response
Returns a CopyPlanResult!
Arguments
| Name | Description |
|---|---|
from - CopyFromPlanVersion!
|
Parameters to define from what plan to copy. |
to - CopyToPlan!
|
Parameters to define how to create a new plan. |
Example
Query
mutation copyPlan(
$from: CopyFromPlanVersion!,
$to: CopyToPlan!
) {
copyPlan(
from: $from,
to: $to
) {
... on CopyPlanPayload {
...CopyPlanPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"from": CopyFromPlanVersion,
"to": CopyToPlan
}
Response
{"data": {"copyPlan": CopyPlanPayload}}
copyPlanService
Description
Creates a plan service in a provided plan by copying an existing plan service from another plan.
Response
Returns a CopyPlanServiceResult!
Arguments
| Name | Description |
|---|---|
from - CopyPlanServiceFrom!
|
Parameters to define from what plan service to copy. |
to - CopyPlanServiceTo!
|
Parameters to define where to copy a new plan service. |
Example
Query
mutation copyPlanService(
$from: CopyPlanServiceFrom!,
$to: CopyPlanServiceTo!
) {
copyPlanService(
from: $from,
to: $to
) {
... on CopyPlanServicePayload {
...CopyPlanServicePayloadFragment
}
... on PlanServiceNotFound {
...PlanServiceNotFoundFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{
"from": CopyPlanServiceFrom,
"to": CopyPlanServiceTo
}
Response
{"data": {"copyPlanService": CopyPlanServicePayload}}
createAccount
Description
Creates an account for a provider.
Response
Returns a CreateAccountResult!
Arguments
| Name | Description |
|---|---|
input - CreateAccountInput!
|
Parameters for CreateAccount. |
Example
Query
mutation createAccount($input: CreateAccountInput!) {
createAccount(input: $input) {
... on CreateAccountPayload {
...CreateAccountPayloadFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on AccountAlreadyExists {
...AccountAlreadyExistsFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on PostpaidFieldInPrepaidAccount {
...PostpaidFieldInPrepaidAccountFragment
}
... on PostpaidPropertiesRequired {
...PostpaidPropertiesRequiredFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateAccountInput}
Response
{"data": {"createAccount": CreateAccountPayload}}
createAccountCohort
Description
Create a new Account Cohort.
Response
Returns a CreateAccountCohortResult
Arguments
| Name | Description |
|---|---|
input - CreateAccountCohortInput!
|
Example
Query
mutation createAccountCohort($input: CreateAccountCohortInput!) {
createAccountCohort(input: $input) {
... on AccountCohort {
...AccountCohortFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
... on InvalidField {
...InvalidFieldFragment
}
}
}
Variables
{"input": CreateAccountCohortInput}
Response
{"data": {"createAccountCohort": AccountCohort}}
createBalance
Description
Creates a new balance for the provider.
Response
Returns a CreateBalanceResult
Arguments
| Name | Description |
|---|---|
input - CreateBalanceInput!
|
Payload with provider ID and balance information. |
Example
Query
mutation createBalance($input: CreateBalanceInput!) {
createBalance(input: $input) {
... on BalancePayload {
...BalancePayloadFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateBalanceInput}
Response
{"data": {"createBalance": BalancePayload}}
createBalanceType
Description
Creates a new balance type for the provider.
Response
Returns a CreateBalanceTypeResult
Arguments
| Name | Description |
|---|---|
input - CreateBalanceTypeInput!
|
Payload with provider ID and balance type information. |
Example
Query
mutation createBalanceType($input: CreateBalanceTypeInput!) {
createBalanceType(input: $input) {
... on BalanceTypePayload {
...BalanceTypePayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateBalanceTypeInput}
Response
{"data": {"createBalanceType": BalanceTypePayload}}
createCampaign
Description
Create a new Campaign.
Authorized Roles: Account_Admin
Response
Returns a CreateCampaignResult!
Arguments
| Name | Description |
|---|---|
input - CreateCampaignInput!
|
Example
Query
mutation createCampaign($input: CreateCampaignInput!) {
createCampaign(input: $input) {
... on CreateCampaignPayload {
...CreateCampaignPayloadFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on OfferNotFound {
...OfferNotFoundFragment
}
... on AccountCohortNotFound {
...AccountCohortNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateCampaignInput}
Response
{"data": {"createCampaign": CreateCampaignPayload}}
createDevice
Description
Creates a device in an account.
Response
Returns a CreateDeviceResult!
Arguments
| Name | Description |
|---|---|
input - CreateDeviceInput!
|
Parameters for CreateDevice. |
Example
Query
mutation createDevice($input: CreateDeviceInput!) {
createDevice(input: $input) {
... on CreateDevicePayload {
...CreateDevicePayloadFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on DeviceAlreadyExists {
...DeviceAlreadyExistsFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateDeviceInput}
Response
{"data": {"createDevice": CreateDevicePayload}}
createFieldMapping
Description
Field Mappings are first created in draft and need to be deployed to become effective.
Response
Returns a CreateFieldMappingResult!
Arguments
| Name | Description |
|---|---|
input - CreateFieldMappingInput!
|
Parameters for CreateFieldMapping. |
Example
Query
mutation createFieldMapping($input: CreateFieldMappingInput!) {
createFieldMapping(input: $input) {
... on CreateFieldMappingPayload {
...CreateFieldMappingPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on FieldMappingAlreadyExists {
...FieldMappingAlreadyExistsFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateFieldMappingInput}
Response
{
"data": {
"createFieldMapping": CreateFieldMappingPayload
}
}
createOffer
Description
Creates a new offer for the provider.
Response
Returns a CreateOfferResult!
Arguments
| Name | Description |
|---|---|
input - CreateOfferInput!
|
Example
Query
mutation createOffer($input: CreateOfferInput!) {
createOffer(input: $input) {
... on CreateOfferPayload {
...CreateOfferPayloadFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on OfferAlreadyExists {
...OfferAlreadyExistsFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateOfferInput}
Response
{"data": {"createOffer": CreateOfferPayload}}
createPlan
Description
Creates a plan for a provider.
Response
Returns a CreatePlanResult!
Arguments
| Name | Description |
|---|---|
input - CreatePlanInput!
|
Parameters for CreatePlan. |
Example
Query
mutation createPlan($input: CreatePlanInput!) {
createPlan(input: $input) {
... on CreatePlanPayload {
...CreatePlanPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on PlanServiceNotFound {
...PlanServiceNotFoundFragment
}
... on PlanAlreadyExists {
...PlanAlreadyExistsFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreatePlanInput}
Response
{"data": {"createPlan": CreatePlanPayload}}
createPlanFromInitialTemplate
Description
Creates a plan by using a template.
Response
Returns a CreatePlanFromInitialTemplateResult!
Arguments
| Name | Description |
|---|---|
input - CreatePlanFromInitialTemplateInput!
|
Parameters for CreatePlanFromInitialTemplate. |
Example
Query
mutation createPlanFromInitialTemplate($input: CreatePlanFromInitialTemplateInput!) {
createPlanFromInitialTemplate(input: $input) {
... on CreatePlanPayload {
...CreatePlanPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on PlanAlreadyExists {
...PlanAlreadyExistsFragment
}
... on CreatePlanValidationFailed {
...CreatePlanValidationFailedFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on ServiceFormatError {
...ServiceFormatErrorFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreatePlanFromInitialTemplateInput}
Response
{
"data": {
"createPlanFromInitialTemplate": CreatePlanPayload
}
}
createPlanService
Description
Creates a plan service in a plan.
Response
Returns a CreatePlanServiceResult!
Arguments
| Name | Description |
|---|---|
input - CreatePlanServiceInput!
|
Parameters for CreatePlanService. |
Example
Query
mutation createPlanService($input: CreatePlanServiceInput!) {
createPlanService(input: $input) {
... on CreatePlanServicePayload {
...CreatePlanServicePayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on RuleNotFound {
...RuleNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on FieldNotFound {
...FieldNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on ServiceFormatError {
...ServiceFormatErrorFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreatePlanServiceInput}
Response
{"data": {"createPlanService": CreatePlanServicePayload}}
createPlanVersionFromInitialTemplate
Description
Updates a plan that was created by using a template. Creates a new version of the plan.
Response
Arguments
| Name | Description |
|---|---|
input - CreatePlanVersionFromInitialTemplateInput!
|
Parameters for CreatePlanVersionFromInitialTemplate. |
Example
Query
mutation createPlanVersionFromInitialTemplate($input: CreatePlanVersionFromInitialTemplateInput!) {
createPlanVersionFromInitialTemplate(input: $input) {
... on PlanVersionPayload {
...PlanVersionPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on CreatePlanValidationFailed {
...CreatePlanValidationFailedFragment
}
... on PlanVersionAlreadyExists {
...PlanVersionAlreadyExistsFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on ServiceFormatError {
...ServiceFormatErrorFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreatePlanVersionFromInitialTemplateInput}
Response
{
"data": {
"createPlanVersionFromInitialTemplate": PlanVersionPayload
}
}
createUser
Description
Creates a user in Cognito for a specific tenant. It returns the created user or an error.
Response
Returns a CreateUserResult!
Arguments
| Name | Description |
|---|---|
input - CreateUserInput!
|
Parameters for CreateUser. |
Example
Query
mutation createUser($input: CreateUserInput!) {
createUser(input: $input) {
... on SaveUserPayload {
...SaveUserPayloadFragment
}
... on UserAlreadyExists {
...UserAlreadyExistsFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateUserInput}
Response
{"data": {"createUser": SaveUserPayload}}
creditAccount
Description
Add money to the monetary balance.
Response
Returns a CreditAccountResult!
Arguments
| Name | Description |
|---|---|
input - CreditAccountInput!
|
Parameters for a Credit request. |
Example
Query
mutation creditAccount($input: CreditAccountInput!) {
creditAccount(input: $input) {
... on CreditAccountPayload {
...CreditAccountPayloadFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreditAccountInput}
Response
{"data": {"creditAccount": CreditAccountPayload}}
debitAccount
Description
Deduct money from the monetary balance.
Response
Returns a DebitAccountResult!
Arguments
| Name | Description |
|---|---|
input - DebitAccountInput!
|
Parameters for a Debit request. |
Example
Query
mutation debitAccount($input: DebitAccountInput!) {
debitAccount(input: $input) {
... on DebitAccountPayload {
...DebitAccountPayloadFragment
}
... on DebitAccountFailed {
...DebitAccountFailedFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
}
}
Variables
{"input": DebitAccountInput}
Response
{"data": {"debitAccount": DebitAccountPayload}}
deleteAccount
Description
Deletes an account if it does not have any children or devices.
Response
Returns a DeleteAccountResult!
Arguments
| Name | Description |
|---|---|
input - DeleteAccountInput!
|
Parameters for DeleteAccount. |
Example
Query
mutation deleteAccount($input: DeleteAccountInput!) {
deleteAccount(input: $input) {
... on DeleteAccountPayload {
...DeleteAccountPayloadFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on AccountHasReferences {
...AccountHasReferencesFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteAccountInput}
Response
{"data": {"deleteAccount": DeleteAccountPayload}}
deleteAccountBalanceTypeCounter
Description
Delete a Balance Type Counter for an account based on the provided input parameters.
Response
Returns a DeleteAccountBalanceTypeCounterResult
Arguments
| Name | Description |
|---|---|
input - DeleteAccountBalanceTypeCounterInput!
|
Example
Query
mutation deleteAccountBalanceTypeCounter($input: DeleteAccountBalanceTypeCounterInput!) {
deleteAccountBalanceTypeCounter(input: $input) {
... on AccountNotFound {
...AccountNotFoundFragment
}
... on DeleteAccountBalanceTypeCounterPayload {
...DeleteAccountBalanceTypeCounterPayloadFragment
}
... on AccountBalanceTypeCounterNotFound {
...AccountBalanceTypeCounterNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteAccountBalanceTypeCounterInput}
Response
{
"data": {
"deleteAccountBalanceTypeCounter": AccountNotFound
}
}
deleteAccountCohort
Description
Delete an existing Account Cohort.
Response
Returns a DeleteAccountCohortResult
Arguments
| Name | Description |
|---|---|
input - DeleteAccountCohortInput!
|
Example
Query
mutation deleteAccountCohort($input: DeleteAccountCohortInput!) {
deleteAccountCohort(input: $input) {
... on DeleteAccountCohortPayload {
...DeleteAccountCohortPayloadFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on AccountCohortNotFound {
...AccountCohortNotFoundFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteAccountCohortInput}
Response
{
"data": {
"deleteAccountCohort": DeleteAccountCohortPayload
}
}
deleteBalance
Description
Deletes an existing balance for the provider.
Response
Returns a DeleteBalanceResult
Arguments
| Name | Description |
|---|---|
input - DeleteBalanceInput!
|
Payload with provider ID and balance ID. |
Example
Query
mutation deleteBalance($input: DeleteBalanceInput!) {
deleteBalance(input: $input) {
... on DeleteBalancePayload {
...DeleteBalancePayloadFragment
}
... on BalanceNotFound {
...BalanceNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on BalanceHasReferences {
...BalanceHasReferencesFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteBalanceInput}
Response
{"data": {"deleteBalance": DeleteBalancePayload}}
deleteBalanceType
Description
Deletes an existing balance type for the provider.
Response
Returns a DeleteBalanceTypeResult
Arguments
| Name | Description |
|---|---|
input - DeleteBalanceTypeInput!
|
Payload with provider ID and balance type ID. |
Example
Query
mutation deleteBalanceType($input: DeleteBalanceTypeInput!) {
deleteBalanceType(input: $input) {
... on DeleteBalanceTypePayload {
...DeleteBalanceTypePayloadFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on BalanceTypeHasReferences {
...BalanceTypeHasReferencesFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteBalanceTypeInput}
Response
{"data": {"deleteBalanceType": DeleteBalanceTypePayload}}
deleteBalanceTypeCounter
Description
Delete a Balance Type Counter based on the provided input parameters.
Response
Returns a DeleteBalanceTypeCounterResult
Arguments
| Name | Description |
|---|---|
input - DeleteBalanceTypeCounterInput!
|
Example
Query
mutation deleteBalanceTypeCounter($input: DeleteBalanceTypeCounterInput!) {
deleteBalanceTypeCounter(input: $input) {
... on DeleteBalanceTypeCounterPayload {
...DeleteBalanceTypeCounterPayloadFragment
}
... on BalanceTypeCounterNotFound {
...BalanceTypeCounterNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on BalanceTypeCounterHasReferences {
...BalanceTypeCounterHasReferencesFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteBalanceTypeCounterInput}
Response
{
"data": {
"deleteBalanceTypeCounter": DeleteBalanceTypeCounterPayload
}
}
deleteCampaign
Description
Deletes an existing Campaign.
Authorized Roles: Account_Admin
Response
Returns a DeleteCampaignResult!
Arguments
| Name | Description |
|---|---|
input - DeleteCampaignInput!
|
Example
Query
mutation deleteCampaign($input: DeleteCampaignInput!) {
deleteCampaign(input: $input) {
... on DeleteCampaignPayload {
...DeleteCampaignPayloadFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on CampaignNotFound {
...CampaignNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteCampaignInput}
Response
{"data": {"deleteCampaign": DeleteCampaignPayload}}
deleteDevice
Description
Deletes a device from an account.
Response
Returns a DeleteDeviceResult!
Arguments
| Name | Description |
|---|---|
input - DeleteDeviceInput!
|
Parameters for DeleteDevice. |
Example
Query
mutation deleteDevice($input: DeleteDeviceInput!) {
deleteDevice(input: $input) {
... on DeleteDevicePayload {
...DeleteDevicePayloadFragment
}
... on DeviceNotFound {
...DeviceNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteDeviceInput}
Response
{"data": {"deleteDevice": DeleteDevicePayload}}
deleteFieldMapping
Description
This method deletes Field Mappings in draft and requires deployments to become effective.
Response
Returns a DeleteFieldMappingResult!
Arguments
| Name | Description |
|---|---|
input - DeleteFieldMappingInput!
|
Parameters for DeleteFieldMapping. |
Example
Query
mutation deleteFieldMapping($input: DeleteFieldMappingInput!) {
deleteFieldMapping(input: $input) {
... on DeleteFieldMappingPayload {
...DeleteFieldMappingPayloadFragment
}
... on FieldMappingNotFound {
...FieldMappingNotFoundFragment
}
... on FieldMappingHasReferences {
...FieldMappingHasReferencesFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteFieldMappingInput}
Response
{
"data": {
"deleteFieldMapping": DeleteFieldMappingPayload
}
}
deleteOffer
Description
Deletes an existing offer for the provider.
Response
Returns a DeleteOfferResult!
Arguments
| Name | Description |
|---|---|
input - DeleteOfferInput!
|
Example
Query
mutation deleteOffer($input: DeleteOfferInput!) {
deleteOffer(input: $input) {
... on DeleteOfferPayload {
...DeleteOfferPayloadFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on OfferNotFound {
...OfferNotFoundFragment
}
... on OfferIsReadOnly {
...OfferIsReadOnlyFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteOfferInput}
Response
{"data": {"deleteOffer": DeleteOfferPayload}}
deletePlan
Description
Deletes a plan. In order to delete a plan it can not be deployed. If a plan is deployed, it can only be archived.
Response
Returns a DeletePlanResult!
Arguments
| Name | Description |
|---|---|
input - DeletePlanInput!
|
Parameters for DeletePlan. |
Example
Query
mutation deletePlan($input: DeletePlanInput!) {
deletePlan(input: $input) {
... on DeletePlanPayload {
...DeletePlanPayloadFragment
}
... on PlanNotFound {
...PlanNotFoundFragment
}
... on PlanVersionHasReferences {
...PlanVersionHasReferencesFragment
}
... on PlanIsReadOnly {
...PlanIsReadOnlyFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeletePlanInput}
Response
{"data": {"deletePlan": DeletePlanPayload}}
deletePlanService
Description
Deletes a plan service from a not deployed plan.
Response
Returns a DeletePlanServiceResult!
Arguments
| Name | Description |
|---|---|
input - DeletePlanServiceInput!
|
Parameters for DeletePlanService. |
Example
Query
mutation deletePlanService($input: DeletePlanServiceInput!) {
deletePlanService(input: $input) {
... on DeletePlanServicePayload {
...DeletePlanServicePayloadFragment
}
... on PlanServiceNotFound {
...PlanServiceNotFoundFragment
}
... on PlanVersionHasReferences {
...PlanVersionHasReferencesFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeletePlanServiceInput}
Response
{"data": {"deletePlanService": DeletePlanServicePayload}}
deletePlanVersion
Description
Deletes plan version if it was never deployed.
Response
Returns a DeletePlanVersionResult!
Arguments
| Name | Description |
|---|---|
input - DeletePlanVersionInput!
|
Parameters for DeletePlanVersion. |
Example
Query
mutation deletePlanVersion($input: DeletePlanVersionInput!) {
deletePlanVersion(input: $input) {
... on DeletePlanVersionPayload {
...DeletePlanVersionPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on PlanVersionHasReferences {
...PlanVersionHasReferencesFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeletePlanVersionInput}
Response
{"data": {"deletePlanVersion": DeletePlanVersionPayload}}
deleteUser
Description
Deletes a specific user in Cognito for a specific tenant. It returns the deleted user or an error.
Response
Returns a DeleteUserResult!
Arguments
| Name | Description |
|---|---|
input - DeleteUserInput!
|
Parameters for DeleteUser. |
Example
Query
mutation deleteUser($input: DeleteUserInput!) {
deleteUser(input: $input) {
... on DeleteUserPayload {
...DeleteUserPayloadFragment
}
... on UserNotFound {
...UserNotFoundFragment
}
... on UserIsReadOnly {
...UserIsReadOnlyFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteUserInput}
Response
{"data": {"deleteUser": DeleteUserPayload}}
deployFieldMappings
Description
Once you have defined a new Field Mapping, you can call deployFieldMappings and specify the path of the field mapping you want to deploy.
- By providing a
fromdate, you can specify a point in the future when current set of field mappings will take effect, e.g. the first of the coming month for the field mapping to become active. - If you omit the
fromdate, immediate activation is performed. - The process to deploy an updated field mapping is equivalent to a new one. You specify the path of the field mapping you want to deploy and this specific mapping will be updated. Any other deployed mappings remain untouched.
- If you provide a list of
paths, this set of field mappings will be deployed. Any other deployed mappings remain unchanged. - To remove a deployed Field Mapping:
- Delete the Field Mapping from the draft using
deleteFieldMapping. - Next invoke the
deployFieldMappingswithout providing thepathsparameter. - This operation will deploy only the field mappings that are specified in the draft.
- If a
fromdate is not provided, the current time is used as the defaultfromdate. - Any existing field mappings not in the draft will be removed with the following limitations. When existing field mappings are deleted, the system checks if the
fromdate of the existing mapping is earlier than thefromdate specified for the new mapping. If it is, the deleted mapping is re-added. So to completely delete a deployed field mapping, you should provide afromdate that matches or precedes thefromdate used in the prior deployment of the field mapping you wish to remove.
- Delete the Field Mapping from the draft using
Response
Returns a DeployFieldMappingsResult!
Arguments
| Name | Description |
|---|---|
input - DeployFieldMappingsInput!
|
Parameters for DeployFieldMappings. |
Example
Query
mutation deployFieldMappings($input: DeployFieldMappingsInput!) {
deployFieldMappings(input: $input) {
... on DeployFieldMappingsPayload {
...DeployFieldMappingsPayloadFragment
}
... on FieldMappingNotFound {
...FieldMappingNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeployFieldMappingsInput}
Response
{
"data": {
"deployFieldMappings": DeployFieldMappingsPayload
}
}
deployPlan
Description
Deploys a plan so it can be used for assignment to accounts. A deployed plan cannot be edited anymore.
Response
Returns a DeployPlanVersionResult!
Arguments
| Name | Description |
|---|---|
input - DeployPlanVersionInput!
|
Parameters for DeployPlan. |
Example
Query
mutation deployPlan($input: DeployPlanVersionInput!) {
deployPlan(input: $input) {
... on PlanVersionPayload {
...PlanVersionPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on DeploymentVerificationFailed {
...DeploymentVerificationFailedFragment
}
... on MigrationAlreadyInProgress {
...MigrationAlreadyInProgressFragment
}
... on PlanVersionWrongTransition {
...PlanVersionWrongTransitionFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeployPlanVersionInput}
Response
{"data": {"deployPlan": PlanVersionPayload}}
makePlanAssignable
Description
Makes a plan assignable. Plan must be deployed to be able to make it assignable.
Response
Returns an AssignablePlanVersionResult!
Arguments
| Name | Description |
|---|---|
input - AssignablePlanVersionInput!
|
Parameters for MakePlanAssignable. |
Example
Query
mutation makePlanAssignable($input: AssignablePlanVersionInput!) {
makePlanAssignable(input: $input) {
... on PlanVersionPayload {
...PlanVersionPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on PlanVersionWrongTransition {
...PlanVersionWrongTransitionFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": AssignablePlanVersionInput}
Response
{"data": {"makePlanAssignable": PlanVersionPayload}}
makePlanNotAssignable
Description
Makes a plan not assignable. It can be done at any point in time to make sure that a plan cannot be assigned to anyone.
Response
Returns an AssignablePlanVersionResult!
Arguments
| Name | Description |
|---|---|
input - AssignablePlanVersionInput!
|
Parameters for MakePlanNotAssignable. |
Example
Query
mutation makePlanNotAssignable($input: AssignablePlanVersionInput!) {
makePlanNotAssignable(input: $input) {
... on PlanVersionPayload {
...PlanVersionPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on PlanVersionWrongTransition {
...PlanVersionWrongTransitionFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": AssignablePlanVersionInput}
Response
{"data": {"makePlanNotAssignable": PlanVersionPayload}}
removeWhitelistIP
Description
Removes IP from whitelist
Response
Returns a RemoveWhitelistIpResult
Arguments
| Name | Description |
|---|---|
input - IpRestrictionInput!
|
Input to remove IP from whitelist |
Example
Query
mutation removeWhitelistIP($input: IpRestrictionInput!) {
removeWhitelistIP(input: $input) {
... on IpRestrictionPayload {
...IpRestrictionPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on IpNotFound {
...IpNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": IpRestrictionInput}
Response
{"data": {"removeWhitelistIP": IpRestrictionPayload}}
resetUserPassword
Description
Resets the password of a specific user in Cognito for a specific tenant. It returns the user or an error.
Response
Returns a ResetUserPasswordResult!
Arguments
| Name | Description |
|---|---|
input - ResetUserPasswordInput!
|
Parameters for ResetUserPassword. |
Example
Query
mutation resetUserPassword($input: ResetUserPasswordInput!) {
resetUserPassword(input: $input) {
... on ResetUserPasswordPayload {
...ResetUserPasswordPayloadFragment
}
... on UserNotFound {
...UserNotFoundFragment
}
... on UserIncorrectStatus {
...UserIncorrectStatusFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": ResetUserPasswordInput}
Response
{"data": {"resetUserPassword": ResetUserPasswordPayload}}
subscribeToPlan
Description
Assigns a plan to an account for a predefined period of time. If the parameters 'to' and 'from' are not specified, the plan period is from now to a far time in the future (indefinite).
Response
Returns a SubscribeToPlanVersionResult!
Arguments
| Name | Description |
|---|---|
input - SubscribeToPlanVersionInput!
|
Parameters for SubscribeToPlan. |
Example
Query
mutation subscribeToPlan($input: SubscribeToPlanVersionInput!) {
subscribeToPlan(input: $input) {
... on SubscribeToPlanVersionPayload {
...SubscribeToPlanVersionPayloadFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on PlanNotFound {
...PlanNotFoundFragment
}
... on PlanVersionIsNotAssignable {
...PlanVersionIsNotAssignableFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on SubscribeToPlanVersionValidationFailed {
...SubscribeToPlanVersionValidationFailedFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": SubscribeToPlanVersionInput}
Response
{
"data": {
"subscribeToPlan": SubscribeToPlanVersionPayload
}
}
updateAccount
Description
Updates account attributes.
Response
Returns an UpdateAccountResult!
Arguments
| Name | Description |
|---|---|
input - UpdateAccountInput!
|
Parameters for UpdateAccount. |
Example
Query
mutation updateAccount($input: UpdateAccountInput!) {
updateAccount(input: $input) {
... on UpdateAccountPayload {
...UpdateAccountPayloadFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on CannotChangeAccountType {
...CannotChangeAccountTypeFragment
}
... on PostpaidFieldInPrepaidAccount {
...PostpaidFieldInPrepaidAccountFragment
}
... on CannotSetLongFirstBillingCycle {
...CannotSetLongFirstBillingCycleFragment
}
... on DayOfMonthAlreadySet {
...DayOfMonthAlreadySetFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateAccountInput}
Response
{"data": {"updateAccount": UpdateAccountPayload}}
updateAccountBalanceTypeCounter
Description
Update or create Balance Type Counter notifications for an account based on the provided input parameters. This will override anything coming from the BalanceType counter definition for a given counter. Creates or updates an AccountBalanceCounter record.
Response
Returns an AccountBalanceTypeCounterResult
Arguments
| Name | Description |
|---|---|
input - UpdateAccountBalanceTypeCounterInput!
|
Example
Query
mutation updateAccountBalanceTypeCounter($input: UpdateAccountBalanceTypeCounterInput!) {
updateAccountBalanceTypeCounter(input: $input) {
... on AccountNotFound {
...AccountNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on AccountBalanceTypeCounterPayload {
...AccountBalanceTypeCounterPayloadFragment
}
... on AccountBalanceTypeCounterNotFound {
...AccountBalanceTypeCounterNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateAccountBalanceTypeCounterInput}
Response
{
"data": {
"updateAccountBalanceTypeCounter": AccountNotFound
}
}
updateAccountCohort
Description
Update an existing Account Cohort.
Response
Returns an UpdateAccountCohortResult
Arguments
| Name | Description |
|---|---|
input - UpdateAccountCohortInput!
|
Example
Query
mutation updateAccountCohort($input: UpdateAccountCohortInput!) {
updateAccountCohort(input: $input) {
... on AccountCohort {
...AccountCohortFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on AccountCohortNotFound {
...AccountCohortNotFoundFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
... on InvalidField {
...InvalidFieldFragment
}
}
}
Variables
{"input": UpdateAccountCohortInput}
Response
{"data": {"updateAccountCohort": AccountCohort}}
updateArchivingPolicy
Description
Updates an S3 archiving policy for long-term EDR files for logged in tenant.
Response
Returns an UpdateArchivingPolicyResult!
Arguments
| Name | Description |
|---|---|
input - UpdateArchivingPolicyInput!
|
Parameters for UpdateArchivingPolicy. |
Example
Query
mutation updateArchivingPolicy($input: UpdateArchivingPolicyInput!) {
updateArchivingPolicy(input: $input) {
... on UpdateArchivingPolicyPayload {
...UpdateArchivingPolicyPayloadFragment
}
... on UpdateArchivingPolicyFailed {
...UpdateArchivingPolicyFailedFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateArchivingPolicyInput}
Response
{
"data": {
"updateArchivingPolicy": UpdateArchivingPolicyPayload
}
}
updateBalance
Description
Updates an existing balance for the provider.
Response
Returns an UpdateBalanceResult
Arguments
| Name | Description |
|---|---|
input - UpdateBalanceInput!
|
Payload with provider ID, balance ID, and fields to be updated. |
Example
Query
mutation updateBalance($input: UpdateBalanceInput!) {
updateBalance(input: $input) {
... on BalancePayload {
...BalancePayloadFragment
}
... on BalanceNotFound {
...BalanceNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on BalanceHasReferences {
...BalanceHasReferencesFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateBalanceInput}
Response
{"data": {"updateBalance": BalancePayload}}
updateBalanceType
Description
Updates an existing balance type for the provider.
Response
Returns an UpdateBalanceTypeResult
Arguments
| Name | Description |
|---|---|
input - UpdateBalanceTypeInput!
|
Payload with provider ID, balance type ID, and fields to be updated. |
Example
Query
mutation updateBalanceType($input: UpdateBalanceTypeInput!) {
updateBalanceType(input: $input) {
... on BalanceTypePayload {
...BalanceTypePayloadFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on BalanceTypeHasReferences {
...BalanceTypeHasReferencesFragment
}
... on BalanceTypeCounterNotFound {
...BalanceTypeCounterNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateBalanceTypeInput}
Response
{"data": {"updateBalanceType": BalanceTypePayload}}
updateBalanceTypeCounter
Description
Update or create Balance Type Counter notifications based on the provided input parameters. Creates or updates BalanceTypeCounter.
Response
Returns a BalanceTypeCounterResult
Arguments
| Name | Description |
|---|---|
input - UpdateBalanceTypeCounterInput!
|
Example
Query
mutation updateBalanceTypeCounter($input: UpdateBalanceTypeCounterInput!) {
updateBalanceTypeCounter(input: $input) {
... on UpdateBalanceTypeCounterPayload {
...UpdateBalanceTypeCounterPayloadFragment
}
... on BalanceTypeCounterNotFound {
...BalanceTypeCounterNotFoundFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateBalanceTypeCounterInput}
Response
{
"data": {
"updateBalanceTypeCounter": UpdateBalanceTypeCounterPayload
}
}
updateCampaign
Description
Updates an existing Campaign.
Authorized Roles: Account_Admin
Response
Returns an UpdateCampaignResult!
Arguments
| Name | Description |
|---|---|
input - UpdateCampaignInput!
|
Example
Query
mutation updateCampaign($input: UpdateCampaignInput!) {
updateCampaign(input: $input) {
... on UpdateCampaignPayload {
...UpdateCampaignPayloadFragment
}
... on CampaignAlreadyCompleted {
...CampaignAlreadyCompletedFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on OfferNotFound {
...OfferNotFoundFragment
}
... on AccountCohortNotFound {
...AccountCohortNotFoundFragment
}
... on CampaignNotFound {
...CampaignNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateCampaignInput}
Response
{"data": {"updateCampaign": UpdateCampaignPayload}}
updateDebit
Description
Update a RESERVED debit request.
Response
Returns an UpdateDebitResult!
Arguments
| Name | Description |
|---|---|
input - UpdateDebitInput!
|
Parameters for the update debit request. |
Example
Query
mutation updateDebit($input: UpdateDebitInput!) {
updateDebit(input: $input) {
... on UpdateDebitPayload {
...UpdateDebitPayloadFragment
}
... on DebitReservationNotFound {
...DebitReservationNotFoundFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
}
}
Variables
{"input": UpdateDebitInput}
Response
{"data": {"updateDebit": UpdateDebitPayload}}
updateDevice
Description
Updates device attributes.
Response
Returns an UpdateDeviceResult!
Arguments
| Name | Description |
|---|---|
input - UpdateDeviceInput!
|
Parameters for UpdateDevice. |
Example
Query
mutation updateDevice($input: UpdateDeviceInput!) {
updateDevice(input: $input) {
... on UpdateDevicePayload {
...UpdateDevicePayloadFragment
}
... on DeviceNotFound {
...DeviceNotFoundFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateDeviceInput}
Response
{"data": {"updateDevice": UpdateDevicePayload}}
updateFieldMapping
Description
This method updates Field Mappings in draft and need to be deployed to become effective.
Response
Returns an UpdateFieldMappingResult!
Arguments
| Name | Description |
|---|---|
input - UpdateFieldMappingInput!
|
Parameters for UpdateFieldMapping. |
Example
Query
mutation updateFieldMapping($input: UpdateFieldMappingInput!) {
updateFieldMapping(input: $input) {
... on UpdateFieldMappingPayload {
...UpdateFieldMappingPayloadFragment
}
... on FieldMappingNotFound {
...FieldMappingNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateFieldMappingInput}
Response
{
"data": {
"updateFieldMapping": UpdateFieldMappingPayload
}
}
updateMyProviderConfig
Description
Updates a tenant Config by the Tenant Admin.
Response
Returns an UpdateMyProviderConfigResult!
Arguments
| Name | Description |
|---|---|
input - UpdateMyProviderConfigInput!
|
Parameters for UpdateMyProviderConfig. |
Example
Query
mutation updateMyProviderConfig($input: UpdateMyProviderConfigInput!) {
updateMyProviderConfig(input: $input) {
... on ProviderConfig {
...ProviderConfigFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateMyProviderConfigInput}
Response
{"data": {"updateMyProviderConfig": ProviderConfig}}
updateOffer
Description
Updates an existing offer for the provider.
Response
Returns an UpdateOfferResult!
Arguments
| Name | Description |
|---|---|
input - UpdateOfferInput!
|
Example
Query
mutation updateOffer($input: UpdateOfferInput!) {
updateOffer(input: $input) {
... on UpdateOfferPayload {
...UpdateOfferPayloadFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on OfferNotFound {
...OfferNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateOfferInput}
Response
{"data": {"updateOffer": UpdateOfferPayload}}
updatePlan
Description
Updates plan attributes, such as name.
Response
Returns an UpdatePlanResult!
Arguments
| Name | Description |
|---|---|
input - UpdatePlanInput!
|
Parameters for UpdatePlan. |
Example
Query
mutation updatePlan($input: UpdatePlanInput!) {
updatePlan(input: $input) {
... on UpdatePlanPayload {
...UpdatePlanPayloadFragment
}
... on PlanNotFound {
...PlanNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdatePlanInput}
Response
{"data": {"updatePlan": UpdatePlanPayload}}
updatePlanService
Description
Updates plan service attributes, such as name.
Response
Returns an UpdatePlanServiceResult!
Arguments
| Name | Description |
|---|---|
input - UpdatePlanServiceInput!
|
Parameters for UpdatePlanService. |
Example
Query
mutation updatePlanService($input: UpdatePlanServiceInput!) {
updatePlanService(input: $input) {
... on UpdatePlanServicePayload {
...UpdatePlanServicePayloadFragment
}
... on PlanServiceNotFound {
...PlanServiceNotFoundFragment
}
... on RuleNotFound {
...RuleNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on PlanServiceIsReadOnly {
...PlanServiceIsReadOnlyFragment
}
... on FieldNotFound {
...FieldNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on ServiceFormatError {
...ServiceFormatErrorFragment
}
... on BalanceTypeNotFound {
...BalanceTypeNotFoundFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdatePlanServiceInput}
Response
{"data": {"updatePlanService": UpdatePlanServicePayload}}
updatePlanSubscription
Description
Updates existing assignment of a plan to an account for a predefined period of time. If the parameters 'to' and 'from' are not specified, the plan period is from now to a far time in the future (indefinite).
Response
Returns an UpdatePlanVersionSubscriptionResult!
Arguments
| Name | Description |
|---|---|
input - UpdatePlanSubscriptionInput!
|
Parameters for UpdatePlanSubscription. |
Example
Query
mutation updatePlanSubscription($input: UpdatePlanSubscriptionInput!) {
updatePlanSubscription(input: $input) {
... on SubscribeToPlanVersionPayload {
...SubscribeToPlanVersionPayloadFragment
}
... on PlanNotFound {
...PlanNotFoundFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on PlanVersionIsNotAssignable {
...PlanVersionIsNotAssignableFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on SubscriptionNotFound {
...SubscriptionNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on SubscribeToPlanVersionValidationFailed {
...SubscribeToPlanVersionValidationFailedFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdatePlanSubscriptionInput}
Response
{
"data": {
"updatePlanSubscription": SubscribeToPlanVersionPayload
}
}
updatePlanVersionFromInitialTemplate
Description
Updates a plan that was created by using a template.
Response
Returns an UpdatePlanVersionFromInitialTemplateResult!
Arguments
| Name | Description |
|---|---|
input - UpdatePlanVersionFromInitialTemplateInput!
|
Parameters for UpdatePlanVersionFromInitialTemplate. |
Example
Query
mutation updatePlanVersionFromInitialTemplate($input: UpdatePlanVersionFromInitialTemplateInput!) {
updatePlanVersionFromInitialTemplate(input: $input) {
... on PlanVersionPayload {
...PlanVersionPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on PlanVersionNotFound {
...PlanVersionNotFoundFragment
}
... on CreatePlanValidationFailed {
...CreatePlanValidationFailedFragment
}
... on PlanVersionIsReadOnly {
...PlanVersionIsReadOnlyFragment
}
... on PlanVersionAlreadyExists {
...PlanVersionAlreadyExistsFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on ServiceFormatError {
...ServiceFormatErrorFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on PlanVersionUpdateAlreadyInProgress {
...PlanVersionUpdateAlreadyInProgressFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdatePlanVersionFromInitialTemplateInput}
Response
{
"data": {
"updatePlanVersionFromInitialTemplate": PlanVersionPayload
}
}
updateRatingGroupHierarchy
Description
Updates and deploys after verification rating group hierarchy.
Response
Returns an UpdateRatingGroupHierarchyResult!
Arguments
| Name | Description |
|---|---|
input - UpdateRatingGroupHierarchyInput!
|
Parameters for UpdateRatingGroupHierarchy. |
Example
Query
mutation updateRatingGroupHierarchy($input: UpdateRatingGroupHierarchyInput!) {
updateRatingGroupHierarchy(input: $input) {
... on UpdateRatingGroupHierarchyPayload {
...UpdateRatingGroupHierarchyPayloadFragment
}
... on RatingGroupHierarchyHasReferences {
...RatingGroupHierarchyHasReferencesFragment
}
... on RatingGroupValidationFailed {
...RatingGroupValidationFailedFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateRatingGroupHierarchyInput}
Response
{
"data": {
"updateRatingGroupHierarchy": UpdateRatingGroupHierarchyPayload
}
}
updateSGSNTable
Description
Update the SGSN table for a provider.
Response
Returns an UpdateSGSNTableResult!
Arguments
| Name | Description |
|---|---|
input - UpdateSGSNTableInput!
|
Parameters for UpdateSGSNTable. |
Example
Query
mutation updateSGSNTable($input: UpdateSGSNTableInput!) {
updateSGSNTable(input: $input) {
... on UpdateSGSNTablePayload {
...UpdateSGSNTablePayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateSGSNTableInput}
Response
{"data": {"updateSGSNTable": UpdateSGSNTablePayload}}
updateSettings
Description
Updates settings of a provider.
Response
Returns an UpdateSettingsResult!
Arguments
| Name | Description |
|---|---|
input - UpdateSettingsInput!
|
Parameters for UpdateSettings. |
Example
Query
mutation updateSettings($input: UpdateSettingsInput!) {
updateSettings(input: $input) {
... on UpdateSettingsPayload {
...UpdateSettingsPayloadFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateSettingsInput}
Response
{"data": {"updateSettings": UpdateSettingsPayload}}
updateUser
Description
Updates a specific user in Cognito for a specific tenant. It returns the updated user or an error.
Response
Returns an UpdateUserResult!
Arguments
| Name | Description |
|---|---|
input - UpdateUserInput!
|
Parameters for UpdateUser. |
Example
Query
mutation updateUser($input: UpdateUserInput!) {
updateUser(input: $input) {
... on SaveUserPayload {
...SaveUserPayloadFragment
}
... on UserNotFound {
...UserNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on UserIsReadOnly {
...UserIsReadOnlyFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateUserInput}
Response
{"data": {"updateUser": SaveUserPayload}}
updateUserProfile
Description
Update current user profile. It returns the updated user.
Response
Returns an UpdateUserProfileResult!
Arguments
| Name | Description |
|---|---|
input - UpdateUserProfileInput!
|
Parameters for UpdateUserProfile. |
Example
Query
mutation updateUserProfile($input: UpdateUserProfileInput!) {
updateUserProfile(input: $input) {
... on SaveUserPayload {
...SaveUserPayloadFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateUserProfileInput}
Response
{"data": {"updateUserProfile": SaveUserPayload}}
uploadMetadata
Description
Upload metadata for Account provided by customer
Response
Returns an UploadMetadataResult
Arguments
| Name | Description |
|---|---|
input - UploadMetadataInput!
|
Example
Query
mutation uploadMetadata($input: UploadMetadataInput!) {
uploadMetadata(input: $input) {
... on UploadMetadataPayload {
...UploadMetadataPayloadFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UploadMetadataInput}
Response
{"data": {"uploadMetadata": UploadMetadataPayload}}
Types
AWSDate
Description
An extended ISO 8601 date string in the format YYYY-MM-DD.
Example
AWSDate
AWSDateTime
Description
An extended ISO 8601 date and time string in the format YYYY-MM-DDThh:mm:ss.sssZ.
Example
AWSDateTime
AWSEmail
Description
An email address in the format local-part@domain-part as defined by RFC 822.
Example
AWSEmail
AWSJSON
Description
A JSON string. Any valid JSON construct is automatically parsed and loaded in the resolver mapping templates as maps, lists, or scalar values rather than as the literal input strings. Unquoted strings or otherwise invalid JSON result in a GraphQL validation error.
Example
AWSJSON
AWSPhone
Description
A phone number. This value is stored as a string. Phone numbers can contain either spaces or hyphens to separate digit groups. Phone numbers without a country code are assumed to be US/North American numbers adhering to the North American Numbering Package (NANP).
Example
AWSPhone
AWSTime
Description
An extended ISO 8601 time string in the format hh:mm:ss.sss.
Example
AWSTime
AWSURL
Description
A URL as defined by RFC 1738. For example, https://www.amazon.com/dp/B000NZW3KC/ or mailto:example@example.com. URLs must contain a schema (http, mailto) and can't contain two forward slashes (//) in the path part.
Example
AWSURL
Account
Description
An account to manage multiple devices.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
A unique identifier of an account. |
customData - AWSJSON
|
Any custom data required by the account. Can include used and reserved balance for different services. |
balance - Balance
|
The current balance of the account. |
parent - Account
|
The parent account in an account hierarchy. |
inactivePlanVersions - [SubscribedPlanVersion]
|
Any plan version that the account is subscribed to but is not currently active. Newly subscribed to plans are inactive until the first credit/charge request. |
activePlanVersions - [SubscribedPlanVersion]
|
Any plan version that the account is subscribed to and are currently active. The same plan service can not be used in multiple version. |
archivedPlanVersions - [SubscribedPlanVersion]
|
Any plan version that the account was subscribed to but the subscription ended. |
friendsAndFamily - [String]
|
List of friends and family. |
creditLimit - Float
|
The limit an account can be credited to. It should be negative/zero for prepaid accounts and positive for postpaid accounts. |
notificationCreditLimitThresholds - [Float]
|
Thresholds of the default monetary balance on the account. Whenever the account balance goes lower than any of the values in the set a notification is sent. |
balances - [AccountBalanceInfo!]!
|
Balances types for account. |
postpaid - AccountPostpaidProperties
|
If account is a postpaid account, i.e. creditLimit is greater than zero, this holds the postpaid properties |
churnScore - Float!
|
The churn score for the account, which is the probability that this account would churn |
activatedAt - AWSDateTime
|
Date of account activation. |
Example
{
"providerId": "4",
"id": 4,
"customData": AWSJSON,
"balance": Balance,
"parent": Account,
"inactivePlanVersions": [SubscribedPlanVersion],
"activePlanVersions": [SubscribedPlanVersion],
"archivedPlanVersions": [SubscribedPlanVersion],
"friendsAndFamily": ["abc123"],
"creditLimit": 123.45,
"notificationCreditLimitThresholds": [123.45],
"balances": [AccountBalanceInfo],
"postpaid": AccountPostpaidProperties,
"churnScore": 123.45,
"activatedAt": AWSDateTime
}
AccountAlreadyExists
Description
An error type to be thrown if an account with provided ID already exists.
Example
{
"accountId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
AccountAttributeDimension
Description
Defines a filter dimension for an account attribute.
Fields
| Field Name | Description |
|---|---|
attribute - String!
|
The account attribute to filter on. |
dimensionType - AttributeDimensionType!
|
The type of dimension being filtered. Default is INCLUSIVE. If values are in ISO_INSTANT format the type can be: "BEFORE", "AFTER", "BETWEEN", "ON". |
values - [String!]!
|
The values to filter on. |
Example
{
"attribute": "abc123",
"dimensionType": "INCLUSIVE",
"values": ["abc123"]
}
AccountAttributeDimensionInput
Description
Defines a filter dimension for an account attribute.
Fields
| Input Field | Description |
|---|---|
attribute - String!
|
The account attribute to filter on. |
dimensionType - AttributeDimensionType!
|
The type of dimension being filtered. Default is INCLUSIVE. If values are in ISO_INSTANT format the type can be: "BEFORE", "AFTER", "BETWEEN", "ON". |
values - [String!]!
|
The values to filter on. |
Example
{
"attribute": "xyz789",
"dimensionType": "INCLUSIVE",
"values": ["xyz789"]
}
AccountBalanceInfo
Description
Balance details return type.
Fields
| Field Name | Description |
|---|---|
balanceId - ID!
|
ID for the balance. |
balanceType - BalanceTypePayload!
|
Balance type ID. |
priority - Float!
|
Priority of the balance. If there are multiple balances of the same type, the one with the highest priority will be used first. |
balanceValue - Float!
|
Value of the balance. |
limit - Float
|
The limit for the balance can be decimal only for rate-based ones. Unit-based ones should use full numbers, if not specified take from balanceTypeId. |
from - AWSDateTime
|
Start date of the balance. |
to - AWSDateTime
|
End date of the balance. |
total - Float
|
Total balance of the account. |
reserved - Float
|
Reserved balance of the account. |
used - Float
|
Used balance of the account. |
available - Float
|
Available balance of the account. |
counters - [BalanceTypeCounterPayload!]
|
List of counters overwritten by an account in this balance. |
Example
{
"balanceId": "4",
"balanceType": BalanceTypePayload,
"priority": 123.45,
"balanceValue": 123.45,
"limit": 123.45,
"from": AWSDateTime,
"to": AWSDateTime,
"total": 987.65,
"reserved": 987.65,
"used": 987.65,
"available": 987.65,
"counters": [BalanceTypeCounterPayload]
}
AccountBalanceTypeCounterNotFound
Description
An error type to be thrown if the Balance Type Counter was not found with the given inputs for the account.
Example
{
"balanceTypeCounterId": "4",
"balanceTypeId": 4,
"accountId": "4",
"errorCode": "abc123",
"errorMessage": "xyz789"
}
AccountBalanceTypeCounterPayload
Description
A representation of a single Balance Type Counter overridden in an Account.
Fields
| Field Name | Description |
|---|---|
balanceTypeId - ID!
|
The Balance Type associated with the Balance Type Counter. |
accountId - ID!
|
The account ID associated with the Balance Type Counter. |
counter - BalanceTypeCounterPayload!
|
The counter information payload. |
Example
{
"balanceTypeId": "4",
"accountId": "4",
"counter": BalanceTypeCounterPayload
}
AccountBalanceTypeCounterResult
Description
Return type of BalanceTypeCounter including all possible errors.
AccountNotFound (AccountNotFound)- The specified account does not exist.AccountBalanceTypeCounterNotFound (AccountBalanceTypeCounterNotFound)- The specified counter does not exist in the account.BalanceTypeNotFound (BalanceTypeNotFound)- The specified balance type does not exist.
Example
AccountNotFound
AccountBalanceTypeCountersPayload
Description
A representation of Balance Type Counters overridden in an Account.
Fields
| Field Name | Description |
|---|---|
balanceTypeId - ID!
|
The Balance Type associated with the Balance Type Counters. |
accountId - ID!
|
The account ID associated with the Balance Type Counters. |
counters - [BalanceTypeCounterPayload!]!
|
The counters information payload. |
Example
{
"balanceTypeId": 4,
"accountId": 4,
"counters": [BalanceTypeCounterPayload]
}
AccountBalanceTypeCountersResult
Description
Return type of several BalanceTypeCounter items including all possible errors.
AccountNotFound (AccountNotFound)- The specified account does not exist.AccountBalanceTypeCounterNotFound (AccountBalanceTypeCounterNotFound)- The specified counter does not exist in the account.BalanceTypeNotFound (BalanceTypeNotFound)- The specified balance type does not exist.
Example
AccountNotFound
AccountCohort
Description
The Account Cohort definition for Plan Marketing Campaigns.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
Unique identifier for the Account Cohort. |
name - String!
|
Name of the Account Cohort. |
dimensions - AccountCohortDimensions!
|
Conditions for Account Dimensions. |
nestedConditions - AccountCohortGroups
|
Additional nested conditions. |
creationDate - AWSDateTime!
|
Creation date of the Account Cohort. |
lastModifiedDate - AWSDateTime!
|
Last modification date of the Account Cohort. |
Example
{
"id": "4",
"name": "abc123",
"dimensions": AccountCohortDimensions,
"nestedConditions": AccountCohortGroups,
"creationDate": AWSDateTime,
"lastModifiedDate": AWSDateTime
}
AccountCohortConnection
Description
Pagination result for the GetAccountCohorts query.
Fields
| Field Name | Description |
|---|---|
edges - [AccountCohortEdge!]!
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [AccountCohortEdge],
"pageInfo": PageInfo
}
AccountCohortDimensions
Description
Account Cohort dimensions to filter on.
Fields
| Field Name | Description |
|---|---|
attributes - [AccountAttributeDimension]
|
Filter based on account attributes. |
metrics - [AccountCohortMetricDimension]
|
Metrics based criteria. |
Example
{
"attributes": [AccountAttributeDimension],
"metrics": [AccountCohortMetricDimension]
}
AccountCohortDimensionsInput
Description
Account Cohort dimensions to filter on.
Fields
| Input Field | Description |
|---|---|
attributes - [AccountAttributeDimensionInput]
|
Filter based on account attributes. |
metrics - [AccountCohortMetricDimensionInput]
|
Metrics based criteria. |
Example
{
"attributes": [AccountAttributeDimensionInput],
"metrics": [AccountCohortMetricDimensionInput]
}
AccountCohortEdge
Description
Item in the pagination result for the GetAccountCohorts query.
Fields
| Field Name | Description |
|---|---|
node - AccountCohort!
|
The item at the end of the edge. |
cursor - String!
|
A cursor for use in pagination. |
Example
{
"node": AccountCohort,
"cursor": "xyz789"
}
AccountCohortGroup
Description
Defines an Account Cohort group of conditions on several dimensions joined by a logical operation.
Fields
| Field Name | Description |
|---|---|
dimensions - [AccountCohortDimensions!]!
|
Dimensions of the group. |
join - AccountCohortJoinType
|
The joining approach for conditions of the dimensions. |
Example
{"dimensions": [AccountCohortDimensions], "join": "ALL"}
AccountCohortGroupInput
Description
Defines an Account Cohort group of conditions on several dimensions joined by a logical operation.
Fields
| Input Field | Description |
|---|---|
dimensions - [AccountCohortDimensionsInput!]!
|
Dimensions of the group. |
join - AccountCohortJoinType
|
The joining approach for conditions of the dimensions. Default is ALL. |
Example
{
"dimensions": [AccountCohortDimensionsInput],
"join": "ALL"
}
AccountCohortGroups
Description
Defines a set of Account Cohort condition groups joined by a logical operation.
Fields
| Field Name | Description |
|---|---|
groups - [AccountCohortGroup]!
|
List of nested groups. |
join - AccountCohortJoinType
|
The joining approach for conditions of the groups. |
Example
{"groups": [AccountCohortGroup], "join": "ALL"}
AccountCohortGroupsInput
Description
Defines a set of Account Cohort condition groups joined by a logical operation.
Fields
| Input Field | Description |
|---|---|
groups - [AccountCohortGroupInput]!
|
List of groups within the cohort. |
join - AccountCohortJoinType
|
The joining approach for conditions of the groups. Default is ALL. |
Example
{"groups": [AccountCohortGroupInput], "join": "ALL"}
AccountCohortInput
Description
Defines the Account Cohort properties.
Fields
| Input Field | Description |
|---|---|
name - String!
|
The name of the cohort. |
dimensions - AccountCohortDimensionsInput!
|
The dimensions for the cohort. |
nestedConditions - AccountCohortGroupsInput
|
Additional nested conditions. |
Example
{
"name": "abc123",
"dimensions": AccountCohortDimensionsInput,
"nestedConditions": AccountCohortGroupsInput
}
AccountCohortJoinType
Description
Defines how the set of filters is joined together.
Values
| Enum Value | Description |
|---|---|
|
|
Match all of the results (AND operator). |
|
|
Match any of the results (OR operator). |
|
|
Match none of the results (NOT operator). |
Example
"ALL"
AccountCohortMetricDimension
Description
The filter dimension for an account metric.
Fields
| Field Name | Description |
|---|---|
metric - AccountMetric!
|
The account metric |
dimensionType - MetricDimensionType!
|
The comparison operator for the dimension. Default is EQUAL. |
value - Float!
|
The values to compare with. |
Example
{"metric": "churnScore", "dimensionType": "GREATER_THAN", "value": 987.65}
AccountCohortMetricDimensionInput
Description
The filter dimension for an account metric.
Fields
| Input Field | Description |
|---|---|
metric - AccountMetric!
|
The account metric |
dimensionType - MetricDimensionType!
|
The comparison operator for the dimension. Default is EQUAL. |
value - Float!
|
The values to compare with. |
Example
{"metric": "churnScore", "dimensionType": "GREATER_THAN", "value": 987.65}
AccountCohortNotFound
Description
An error type to be thrown if a given Account Cohort was not found.
Example
{
"providerId": "4",
"id": "4",
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
AccountHasReferences
Description
An error type to be thrown if an account has references preventing it from deletion.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
An account for a provided provider ID has references (such as devices or children accounts) preventing it from deletion. |
accountId - ID!
|
An account with a provided account ID has references (such as devices or children accounts) preventing it from deletion. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"providerId": "4",
"accountId": 4,
"errorCode": "abc123",
"errorMessage": "xyz789"
}
AccountMetric
Description
Metrics reported for an account for usage in account cohort filters.
Values
| Enum Value | Description |
|---|---|
|
|
The churn score of users. |
|
|
The average monthly spend of users. |
Example
"churnScore"
AccountNotFound
Description
An error type to be thrown if an account was not found.
Example
{
"providerId": "4",
"accountId": 4,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
AccountPostpaidProperties
Description
Type to hold the postpaid properties of accounts
Fields
| Field Name | Description |
|---|---|
timezone - String
|
The timezone of the user. This is a property for postpaid accounts only |
billingDayOfMonth - Int
|
The day of month for resetting balance and units for account. Value is between 1 and 31 inclusive. This is a property for postpaid accounts only |
lastBillingDate - AWSDate
|
The date (in yyyy-mm-dd format) of the previous billing. This is a property for postpaid accounts only |
longFirstBillingCycle - Boolean
|
Whether the first billing cycle is a long one, e.g. if billing DoM is on the 1st and the account was created on the 16th. If this value is true, it means that the first bill will be for 45 days, while if false, bill will be for 15 days only. This is a property for postpaid accounts only |
Example
{
"timezone": "xyz789",
"billingDayOfMonth": 123,
"lastBillingDate": AWSDate,
"longFirstBillingCycle": true
}
AccountResult
Description
Return type of Account including all possible errors.
Types
| Union Types |
|---|
Example
Account
AddWhitelistIpResult
Description
Return type of IP whitelist adding API
InvalidField (InvalidIP)- The IP CIDR provided is not valid.
Types
| Union Types |
|---|
Example
IpRestrictionPayload
AdjustmentType
Description
Balance adjustment type.
Values
| Enum Value | Description |
|---|---|
|
|
If amount need to be added to the balance. |
|
|
If amount need to be subtracted from the balance. |
|
|
If amount need to be set as the balance. |
Example
"CREDIT"
ApiLimitsConfig
Description
The configurations for limiting a specific API.
Fields
| Field Name | Description |
|---|---|
apiType - ApiType!
|
API type including 4G/5G interface. |
rejectRequestsOverSoftLimit - Boolean
|
If true, API requests are rejected beyond the soft limit. |
softLimitTps - Int
|
The soft limit for the average number of transactions per second. |
hardLimitTps - Int
|
The hard limit for the average number of transactions per second. |
overSoftLimitUntil - AWSDateTime
|
DateTime when the provider will no longer be over the soft limit. |
overHardLimitUntil - AWSDateTime
|
DateTime when the provider will no longer be over the hard limit. |
Example
{
"apiType": "DA_GY",
"rejectRequestsOverSoftLimit": false,
"softLimitTps": 123,
"hardLimitTps": 987,
"overSoftLimitUntil": AWSDateTime,
"overHardLimitUntil": AWSDateTime
}
ApiType
Description
All possible API types including 4G/5G interface.
Values
| Enum Value | Description |
|---|---|
|
|
Diameter Adapter (4G) Gy interface. |
|
|
Diameter Adapter (4G) Sy interface. |
|
|
Engine (5G) n40 interface. |
|
|
Engine (5G) n28 interface. |
|
|
AppSync (GraphQL) API. |
Example
"DA_GY"
ArchivePlanVersionInput
ArchivePlanVersionPayload
Description
Return type of ArchivePlanVersion.
Fields
| Field Name | Description |
|---|---|
archivedPlanVersion - PlanVersion!
|
A plan version that has been archived. |
Example
{"archivedPlanVersion": PlanVersion}
ArchivePlanVersionResult
Description
Return type of ArchivePlanVersion including all possible errors.
Example
ArchivePlanVersionPayload
AssignablePlanVersionInput
Description
Input type of MakePlanVersionAssignable and MakePlanVersionNotAssignable.
Example
{
"providerId": "4",
"planVersionId": "4"
}
AssignablePlanVersionResult
Description
Return type of MakePlanVersionAssignable and MakePlanVersionNotAssignable including all possible errors.
Example
PlanVersionPayload
AttributeDimensionType
Description
The account attribute dimension type.
Values
| Enum Value | Description |
|---|---|
|
|
Accounts matching the specified values would be included in the cohort. |
|
|
Accounts matching the specified values would be excluded from the cohort. |
|
|
Accounts having the attribute value with the given substring would be included in the cohort. |
|
|
Accounts having the attribute value as a datetime before the given value would be included in the cohort. |
|
|
Accounts having the attribute value as a datetime after the given value would be included in the cohort. |
|
|
Accounts having the attribute value as a datetime between the given values would be included in the cohort. |
|
|
Accounts having the attribute value as a date matching the given value would be included in the cohort. The time component in the attribute is ignored. |
Example
"INCLUSIVE"
AuthProvider
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
Example
"apiKey"
AuthRule
Fields
| Input Field | Description |
|---|---|
allow - AuthStrategy!
|
|
provider - AuthProvider
|
|
ownerField - String
|
|
identityClaim - String
|
|
groupClaim - String
|
|
groups - [String]
|
|
groupsField - String
|
|
operations - [ModelOperation]
|
|
queries - [ModelQuery]
|
|
mutations - [ModelMutation]
|
Example
{
"allow": "owner",
"provider": "apiKey",
"ownerField": "abc123",
"identityClaim": "abc123",
"groupClaim": "xyz789",
"groups": ["abc123"],
"groupsField": "xyz789",
"operations": ["create"],
"queries": ["get"],
"mutations": ["create"]
}
AuthStrategy
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
Example
"owner"
Balance
Description
Representation of a balance of one particular account.
Example
{"version": 123, "value": 987.65, "customData": AWSJSON}
BalanceHasReferences
Description
An error type to be thrown if the balance is used in an active account.
Example
{
"balanceId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
BalanceNotFound
Description
An error type to be thrown if a balance was not found.
Example
{
"providerId": "4",
"balanceId": 4,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
BalancePayload
Description
Balance return type.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
Provider ID. |
accountId - ID!
|
Account ID. |
balanceInfo - AccountBalanceInfo!
|
Balance info |
Example
{
"providerId": 4,
"accountId": 4,
"balanceInfo": AccountBalanceInfo
}
BalanceTypeCounterHasReferences
Description
An error type to be thrown if the balance type counter is used in an active account.
Example
{
"balanceTypeCounterId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
BalanceTypeCounterInput
Description
Input parameters for updating Balance Type Counter notifications.
Fields
| Input Field | Description |
|---|---|
balanceTypeCounterId - ID
|
The unique identifier for the Balance Type Counter. Will create a new balance type counter if not provided. Will update an existing balance type counter if provided. |
name - String
|
The unique name associated with the Balance Type Counter. Required if balanceTypeCounterId is not provided to create a new counter. If balanceTypeCounterId is provided, then it updates the counter name. Must be between 1 and 50 characters and consist of letters, digits or special characters. |
period - BalanceTypeCounterPeriodInput
|
The optional reset date for the balance type counter. If provided will be set or updated (overridden). |
isActive - Boolean
|
Indicates whether the counter is active or not. If provided will be set or updated (overridden). |
states - [BalanceTypeCounterStateInput]
|
An optional list of states associated with the Balance Type Counter. Has to be provided when a counter is created and include two states: default and other. Can be excluded on an update which would keep the states as they are. Names of states must be unique. Thresholds must be unique. |
isExclusive - Boolean
|
Indicates whether the counter is inclusive reservation or exclusive. |
isOnUsedBalance - Boolean
|
Indicates whether the counter is on remaining or used balance. |
Example
{
"balanceTypeCounterId": 4,
"name": "abc123",
"period": BalanceTypeCounterPeriodInput,
"isActive": false,
"states": [BalanceTypeCounterStateInput],
"isExclusive": false,
"isOnUsedBalance": true
}
BalanceTypeCounterNotFound
Description
An error type to be thrown if Balance Type Counter was not found with the given inputs.
Example
{
"balanceTypeCounterId": 4,
"balanceTypeId": 4,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
BalanceTypeCounterPayload
Description
A representation of Balance Type Counter notifications.
Fields
| Field Name | Description |
|---|---|
balanceTypeCounterId - ID!
|
The unique identifier for the Balance Type Counter. |
name - String!
|
The unique name associated with the Balance Type Counter. |
period - BalanceTypeCounterPeriod
|
The optional reset date for the balance type counter. |
isActive - Boolean
|
Indicates whether the counter is active or not. |
states - [BalanceTypeCounterState!]
|
An optional list of states associated with the Balance Type Counter. |
isExclusive - Boolean!
|
Indicates whether the counter is inclusive reservation or exclusive. |
isOnUsedBalance - Boolean!
|
Indicates whether the counter is on remaining or used balance. |
Example
{
"balanceTypeCounterId": 4,
"name": "abc123",
"period": BalanceTypeCounterPeriod,
"isActive": false,
"states": [BalanceTypeCounterState],
"isExclusive": true,
"isOnUsedBalance": true
}
BalanceTypeCounterPeriod
Description
Information when balance counter value must be reset.
Fields
| Field Name | Description |
|---|---|
type - CounterPeriodType!
|
The period when counter value must be reset. |
time - AWSTime!
|
The time at which a balance type counter is reset in UTC. |
dayOfMonth - Int
|
The day on which a balance type counter is reset. |
Example
{
"type": "SAME_AS_PLAN",
"time": AWSTime,
"dayOfMonth": 123
}
BalanceTypeCounterPeriodInput
Description
Information when balance counter value must be reset.
Fields
| Input Field | Description |
|---|---|
type - CounterPeriodType!
|
Determines a period when counter value must be reset. |
time - AWSTime!
|
The time at which a balance type counter is reset in UTC. Required for DAILY and MONTHLY periods. |
dayOfMonth - Int
|
The day on which a balance type counter is reset. Required for MONTHLY periods. Has to be in range of 1 - 31. If the day is not valid for the month, the reset will happen on the last day of the month. |
Example
{
"type": "SAME_AS_PLAN",
"time": AWSTime,
"dayOfMonth": 987
}
BalanceTypeCounterResult
Description
Return type of BalanceTypeCounter including all possible errors.
BalanceTypeCounterNotFound (BalanceTypeCounterNotFound)- The balance type ID provided does not exist.BalanceTypeNotFound (BalanceTypeNotFound)- The balance type ID provided does not exist.
Example
UpdateBalanceTypeCounterPayload
BalanceTypeCounterState
Description
Name and threshold of a balance type counter state.
Fields
| Field Name | Description |
|---|---|
name - String!
|
Unique name of the balance type counter's current state. Required when a state will be created. If a state of that name already exists on an update, the state values (threshold and actions) will be updated. |
threshold - Float
|
Threshold of the balance type counter's current state. If no threshold is provided, this is the default state. |
actions - [BalanceTypeCounterStateAction!]
|
Actions to perform when the state is triggered. If not provided when a state will be created, will default to NOTIFY action. If not provided when a state will be updated, will keep the existing actions. If provided when a state will be updated, will override the existing actions. If an empty list is provided, no action will be executed. |
Example
{
"name": "abc123",
"threshold": 123.45,
"actions": ["NOTIFY"]
}
BalanceTypeCounterStateAction
Description
The action to perform when a Balance Type Counter State is triggered.
Values
| Enum Value | Description |
|---|---|
|
|
Trigger notification when the state is triggered. |
|
|
Block the balance (if not blocked) when this state is triggered. |
|
|
Unblock the balance (if blocked) when this state is triggered. |
Example
"NOTIFY"
BalanceTypeCounterStateInput
Description
Name and threshold of a balance type counter state.
Fields
| Input Field | Description |
|---|---|
name - String
|
Unique name of the balance type counter's current state. Must be between 1 and 50 characters and consist of letters, digits or special characters. Required when a state will be created. If a state of that name already exists on an update, the state values (threshold and actions) will be updated. |
threshold - Float
|
Threshold of the balance type counter's current state. If no threshold is provided, this is the default state. |
actions - [BalanceTypeCounterStateAction!]
|
Actions to perform when the state is triggered. If not provided when a state will be created, will default to NOTIFY action. If not provided when a state will be updated, will keep the existing actions. If provided when a state will be updated, will override the existing actions. If an empty list is provided, no action will be executed. |
Example
{
"name": "xyz789",
"threshold": 123.45,
"actions": ["NOTIFY"]
}
BalanceTypeCountersPayload
Description
A representation of Balance Type Counters associated with a balance type.
Fields
| Field Name | Description |
|---|---|
balanceTypeId - ID!
|
The Balance Type associated with the Balance Type Counter. |
counters - [BalanceTypeCounterPayload]!
|
The counters information payload. |
Example
{
"balanceTypeId": "4",
"counters": [BalanceTypeCounterPayload]
}
BalanceTypeHasReferences
Description
An error type to be thrown if the balance type is used in an active plan.
Example
{
"balanceTypeId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
BalanceTypeNotFound
Description
An error type to be thrown if a balance type was not found.
Example
{
"providerId": 4,
"balanceTypeId": "4",
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
BalanceTypePayload
Description
Balance type return type.
Fields
| Field Name | Description |
|---|---|
balanceTypeId - ID!
|
ID for the balance type. |
providerId - ID!
|
Provider ID. |
name - String!
|
Name of the balance type. |
unitType - UnitType!
|
Unit type of the balance type. |
limit - Float
|
Limit of the balance type. If the balance is rate based, it is equivalent creditLimit. |
rateBased - Boolean!
|
Whether it is a rate based balance type like a monetary balance or an allowance based type that is in units. If it is a rate based type, then decimal limits are allowed, otherwise, they aren't. |
counters - [BalanceTypeCounterPayload!]
|
List of balance type counter inputs of the balance type. |
Example
{
"balanceTypeId": 4,
"providerId": 4,
"name": "abc123",
"unitType": "TIME",
"limit": 987.65,
"rateBased": true,
"counters": [BalanceTypeCounterPayload]
}
Boolean
Description
The Boolean scalar type represents true or false.
Example
true
BulkUploadMetadataInput
Description
Input parameters for bulk uploading metadata for an account
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Provider ID. |
Example
{"providerId": 4}
BulkUploadMetadataJobNotFound
Description
An error type to be thrown if a job was not found for given ID.
Example
{
"providerId": "4",
"jobId": 4,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
BulkUploadMetadataJobStatus
Description
Status of a bulk update job.
Values
| Enum Value | Description |
|---|---|
|
|
The job was created, but a file was not yet provided. |
|
|
The job was started, but not yet completed. |
|
|
The job ended successfully. |
|
|
The job ended with a failure. |
Example
"CREATED"
BulkUploadMetadataPayload
BulkUploadMetadataResult
Types
| Union Types |
|---|
Example
BulkUploadMetadataPayload
Campaign
Description
Campaign details.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
The object belongs to a provider. |
id - ID!
|
The unique identifier for the campaign. |
name - String!
|
The name of the campaign. |
description - String
|
A custom description of the campaign. |
campaignSchedule - CampaignSchedule
|
Specifies the schedule settings for a campaign. |
campaignEmailMessage - CampaignEmailMessage
|
Specifies the content for an email message that's sent to recipients of a campaign. |
offers - [Offer!]
|
Offers for this campaign. |
cohort - AccountCohort!
|
Cohort for this campaign. |
state - CampaignState!
|
The current status of the campaign. |
createdAt - AWSDateTime!
|
When it was created. |
modifiedAt - AWSDateTime!
|
When it was last modified. |
Example
{
"providerId": "4",
"id": 4,
"name": "abc123",
"description": "xyz789",
"campaignSchedule": CampaignSchedule,
"campaignEmailMessage": CampaignEmailMessage,
"offers": [Offer],
"cohort": AccountCohort,
"state": "COMPLETED",
"createdAt": AWSDateTime,
"modifiedAt": AWSDateTime
}
CampaignActivityDetail
CampaignActivityEntry
Description
The actual statistics for the campaign execution.
Fields
| Field Name | Description |
|---|---|
state - CampaignExecutionState!
|
The current status of the activity. |
successfulAccountCount - Int!
|
The total number of accounts that the campaign successfully delivered messages to. |
totalAccountCount - Int!
|
The total number of accounts that the campaign successfully delivered messages to. |
scheduledStart - AWSDateTime
|
The scheduled start time of the activity. |
actualStart - AWSDateTime
|
The actual start time of the activity. |
end - AWSDateTime
|
The actual end time when the activity was cancelled or completed. |
executionMetrics - CampaignExecutionMetric
|
The metrics for the execution. |
Example
{
"state": "PENDING",
"successfulAccountCount": 123,
"totalAccountCount": 987,
"scheduledStart": AWSDateTime,
"actualStart": AWSDateTime,
"end": AWSDateTime,
"executionMetrics": CampaignExecutionMetric
}
CampaignAlreadyCompleted
Description
An error type to be thrown if campaign was already completed with the given inputs.
Example
{
"providerId": "4",
"campaignId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
CampaignConnection
Description
A connection to a list of Campaign items.
Fields
| Field Name | Description |
|---|---|
edges - [CampaignEdge!]!
|
List of campaigns. |
pageInfo - PageInfo!
|
Information about pagination in a connection. |
Example
{
"edges": [CampaignEdge],
"pageInfo": PageInfo
}
CampaignEdge
CampaignEmailMessage
Description
Campaign email message content.
Fields
| Field Name | Description |
|---|---|
body - String
|
The body of the email for recipients whose email clients don't render HTML content. |
htmlBody - String!
|
The body of the email, in HTML format, for recipients whose email clients render HTML content. |
subject - String!
|
The subject line, or title, of the email. |
Example
{
"body": "abc123",
"htmlBody": "xyz789",
"subject": "xyz789"
}
CampaignEmailMessageInput
Description
Input for campaign email message content.
Fields
| Input Field | Description |
|---|---|
body - String
|
The body of the email for recipients whose email clients don't render HTML content. |
htmlBody - String!
|
The body of the email, in HTML format, for recipients whose email clients render HTML content. |
subject - String!
|
The subject line, or title, of the email. |
Example
{
"body": "xyz789",
"htmlBody": "xyz789",
"subject": "abc123"
}
CampaignExecutionMetric
Description
The detailed statistics for the campaign.
Fields
| Field Name | Description |
|---|---|
hardBounceRate - Float
|
For all campaign runs, the percentage of email messages that couldn't be delivered to recipients. This metric measures only hard bounces—that is, messages in which the recipient's email address had a permanent issue that prevented the message from being delivered. |
successfulDeliveryRate - Float
|
For all campaign runs, the percentage of messages that were delivered to recipients. |
successfulDeliveryGroupedByDate - [CampaignActivityDetail]
|
For all campaign runs, the percentage of messages that were delivered to recipients during each day in the specified date range. The query results for this metric are grouped by calendar day. |
emailOpenRate - Float
|
For all campaign runs, the percentage of email messages that were opened by recipients. |
directEmailOpens - Float
|
For each campaign run, the number of email messages that were opened by recipients. |
uniqueDeliveries - Float
|
For all campaign runs, the number of unique endpoints that messages were delivered to. |
uniqueDeliveriesByDate - [CampaignActivityDetail]
|
For all campaign runs, the number of unique endpoints that messages were delivered to, for each day in the specified date range. The query results for this metric are grouped by calendar day. |
clicks - Float
|
For each campaign run, the number of times that recipients clicked links in the email message. If a single recipient clicked multiple links in the message, or clicked the same link more than once, each click is included in the count. |
successfulDeliveries - Float
|
For each campaign run, the number of messages that were delivered to recipients. |
attemptedDeliveries - Float
|
For each campaign run, the number of messages that were sent. |
Example
{
"hardBounceRate": 123.45,
"successfulDeliveryRate": 123.45,
"successfulDeliveryGroupedByDate": [
CampaignActivityDetail
],
"emailOpenRate": 123.45,
"directEmailOpens": 123.45,
"uniqueDeliveries": 123.45,
"uniqueDeliveriesByDate": [CampaignActivityDetail],
"clicks": 123.45,
"successfulDeliveries": 987.65,
"attemptedDeliveries": 123.45
}
CampaignExecutionState
Description
Status of the campaign.
Values
| Enum Value | Description |
|---|---|
|
|
The campaign is pending. |
|
|
The campaign is invalid. |
|
|
The campaign is running. |
|
|
The campaign is paused. |
|
|
The campaign has been cancelled. |
|
|
The campaign has been completed. |
|
|
The campaign has been failed. |
Example
"PENDING"
CampaignFrequency
Description
Frequency at which the campaign is sent.
Values
| Enum Value | Description |
|---|---|
|
|
Campaign is sent once. |
|
|
Campaign is sent hourly. |
|
|
Campaign is sent daily. |
|
|
Campaign is sent weekly. |
|
|
Campaign is sent monthly. |
Example
"ONCE"
CampaignNotFound
Description
An error type to be thrown if campaign was not found with the given inputs.
Example
{
"providerId": "4",
"campaignId": 4,
"errorCode": "abc123",
"errorMessage": "abc123"
}
CampaignSchedule
Description
Campaign schedule settings.
Fields
| Field Name | Description |
|---|---|
startDate - AWSDateTime!
|
The scheduled start date of the campaign in ISO 8601 format. |
endDate - AWSDateTime!
|
The scheduled end date of the campaign in ISO 8601 format. |
frequency - CampaignFrequency!
|
The frequency at which the campaign is sent. |
Example
{
"startDate": AWSDateTime,
"endDate": AWSDateTime,
"frequency": "ONCE"
}
CampaignScheduleInput
Description
Input for campaign schedule settings.
Fields
| Input Field | Description |
|---|---|
startDate - AWSDateTime
|
The scheduled start date of the campaign in ISO 8601 format. Optional, Campaign is started immediately if omitted. |
endDate - AWSDateTime!
|
The scheduled end date of the campaign in ISO 8601 format. |
frequency - CampaignFrequency!
|
The frequency at which the campaign is sent. |
Example
{
"startDate": AWSDateTime,
"endDate": AWSDateTime,
"frequency": "ONCE"
}
CampaignState
Description
Status of the campaign.
Values
| Enum Value | Description |
|---|---|
|
|
The campaign has been completed. |
|
|
The campaign has been deleted. |
|
|
The campaign is currently executing. |
|
|
The campaign is invalid. |
|
|
The campaign is paused. |
|
|
The campaign is pending its next run. |
|
|
The campaign is scheduled to run. |
Example
"COMPLETED"
CampaignStatisticsConnection
Description
A connection to a list of Campaign items.
Fields
| Field Name | Description |
|---|---|
edges - [CampaignStatisticsEdge!]!
|
List of campaigns. |
pageInfo - PageInfo!
|
Information about pagination in a connection. |
Example
{
"edges": [CampaignStatisticsEdge],
"pageInfo": PageInfo
}
CampaignStatisticsEdge
Description
An edge in a connection.
Fields
| Field Name | Description |
|---|---|
node - CampaignActivityEntry!
|
The item at the end of the edge. |
cursor - String!
|
A cursor for use in pagination. |
Example
{
"node": CampaignActivityEntry,
"cursor": "xyz789"
}
CampaignStatisticsPayload
Description
Return type for campaign statistics.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
campaignId - String!
|
The campaign ID. |
statistics - CampaignStatisticsConnection!
|
Array of statitics for each execution of the campaign. |
Example
{
"providerId": 4,
"campaignId": "abc123",
"statistics": CampaignStatisticsConnection
}
CampaignStatisticsResult
Description
Return type of campaign statistics including all possible errors.
Example
CampaignStatisticsPayload
CampaignsNotEnabled
Description
An error type to be thrown if a campaign management feature is not enabled for the provider.
Example
{
"providerId": 4,
"errorCode": "abc123",
"errorMessage": "xyz789"
}
CancelPlanSubscriptionInput
Description
Input type of CancelPlanSubscription.
Fields
| Input Field | Description |
|---|---|
planSubscriptionId - ID
|
A unique identifier of a plan subscription to unsubscribe. Either a planVersionId or a planSubscriptionId must be provided at the same time. Will become mandatory when planVersionId is removed. |
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
A unique identifier of an account. |
planVersionId - ID
|
A unique identifier of a plan version to unsubscribe. Either a planVersionId or a planSubscriptionId must be provided at the same time. Replaced by planSubscriptionId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
from - AWSDateTime
|
The start time of the subscription. Set to now if not provided and if plan version ID exists more than once. If both, 'to' and 'from' are not provided, it will cancel the plan version if only one occurrence exists. Replaced by planSubscriptionId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
to - AWSDateTime
|
The end time of the subscription. Set to a far time into the future (the first of January 3000) if not provided and if plan version ID exists more than once. If both, 'to' and 'from' are not provided, it will cancel the plan version if only one occurrence exists. Replaced by planSubscriptionId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
Example
{
"planSubscriptionId": 4,
"providerId": "4",
"accountId": "4",
"planVersionId": 4,
"from": AWSDateTime,
"to": AWSDateTime
}
CancelPlanVersionSubscriptionPayload
Description
Return type of CancelPlanVersionSubscription.
Fields
| Field Name | Description |
|---|---|
account - Account!
|
The account for which the subscription was canceled. |
Example
{"account": Account}
CancelPlanVersionSubscriptionResult
Description
Return type of CancelPlanVersionSubscription including all possible errors.
MultipleSubscriptions- An account has multiple subscriptions and "from" and "to" were not specified.InternalServerError (ChargeEngineNotAvailable)- The charge engine is not available at this time.
Example
CancelPlanVersionSubscriptionPayload
CannotChangeAccountType
Description
An error that is thrown when user tries to change a postpaid account into a prepaid one and vice versa
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
Account for a provided provider ID cannot be changed from postpaid to prepaid and vice versa. |
accountId - ID!
|
Account with a provided account ID cannot be changed from postpaid to prepaid and vice versa. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"providerId": 4,
"accountId": 4,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
CannotSetLongFirstBillingCycle
Description
An error that is thrown when user tries to set longFirstBillingCycle without changing DoM
Example
{
"providerId": 4,
"accountId": "4",
"errorCode": "abc123",
"errorMessage": "xyz789"
}
CopyFromPlanVersion
CopyPlanPayload
Description
Return type of CopyPlan.
Fields
| Field Name | Description |
|---|---|
plan - Plan!
|
Copied plan. |
Example
{"plan": Plan}
CopyPlanResult
Description
Return type of CopyPlan including all possible errors.
Example
CopyPlanPayload
CopyPlanServiceFrom
CopyPlanServicePayload
Description
Return type of CopyPlanService.
Fields
| Field Name | Description |
|---|---|
planService - PlanService!
|
The copied plan service. |
planVersion - PlanVersion!
|
The plan version it was copied to. |
Example
{
"planService": PlanService,
"planVersion": PlanVersion
}
CopyPlanServiceResult
Description
Return type of CopyPlanService including all possible errors.
Example
CopyPlanServicePayload
CopyPlanServiceTo
Description
Input type of CopyPlanService to define a new plan service attributes.
Example
{
"planVersionId": "4",
"name": "abc123"
}
CopyToPlan
Description
Input type of CopyPlan to define a new plan attributes.
Fields
| Input Field | Description |
|---|---|
name - String!
|
The name of the plan attribute. |
Example
{"name": "xyz789"}
Counter
Description
Counters provide a possibility to calculate spending values and change their states based on the calculations. Later on their state can be used to provide notifications to the customer. They enable other elements of the Provider’s core network to support real-time quality-of-service and other policies, even for post-paid offline transactions.
Fields
| Field Name | Description |
|---|---|
name - String!
|
Unique name for this Counter. |
persistent - Boolean!
|
Persistent counter saves its state between sessions, transient counter resets its state between sessions. |
period - CounterPeriod
|
Determines when a counter is reset. |
selector - String
|
Boolean expression to determine if the current event should be counted. |
increment - String!
|
Value expression that will be used to increment the counter. |
states - [CounterState!]!
|
Possible states of the counter. |
notificationFields - [String]
|
Additional notification fields which are sent in notifications caused by this counter. |
Example
{
"name": "xyz789",
"persistent": false,
"period": CounterPeriod,
"selector": "abc123",
"increment": "abc123",
"states": [CounterState],
"notificationFields": ["xyz789"]
}
CounterInput
Description
Parameters for counter creation.
Fields
| Input Field | Description |
|---|---|
name - String!
|
Unique name for this Counter. Must be between 1 and 50 characters and consist of letters, digits or special characters. |
persistent - Boolean
|
Persistent counter saves its state between sessions, transient counter resets its state between sessions. If not provided then considered as transient - false. |
period - CounterPeriodInput
|
Determines when a counter is reset. If not provided then the counter is never reset and will be active while subscription is active. |
selector - String
|
Boolean expression to determine if the current event should be counted. If not provided then all events are counted. |
increment - String!
|
Value expression that will be used to increment the counter. The result of the expression must return a number. |
states - [CounterStateInput!]!
|
Possible states of the counter. |
notificationFields - [String]
|
Additional notification fields which are sent in notifications caused by this counter. |
Example
{
"name": "xyz789",
"persistent": false,
"period": CounterPeriodInput,
"selector": "abc123",
"increment": "abc123",
"states": [CounterStateInput],
"notificationFields": ["xyz789"]
}
CounterPeriod
Description
Information when counter value must be reset.
Fields
| Field Name | Description |
|---|---|
type - CounterPeriodType!
|
Determines a period when counter value must be reset. |
data - String!
|
Value expression, specific for the given period type - e.g. the hour to reset daily counter. |
Example
{"type": "SAME_AS_PLAN", "data": "xyz789"}
CounterPeriodInput
Description
Information when counter value must be reset.
Fields
| Input Field | Description |
|---|---|
type - CounterPeriodType!
|
Determines a period when counter value must be reset. |
data - String!
|
Value expression, specific for the given period type - e.g. the hour to reset daily counter. The result of the expression could be either an integer or a date in AWSDateTime format. |
Example
{"type": "SAME_AS_PLAN", "data": "abc123"}
CounterPeriodType
Description
Possible period types for counters.
Values
| Enum Value | Description |
|---|---|
|
|
Counter value is reset when the plan that contains the counter is renewed. |
|
|
Counter value is reset every month. |
|
|
Counter value is reset every day. |
|
|
Counter value is never reset. |
Example
"SAME_AS_PLAN"
CounterState
Description
List of name / value pairs used to determine the counter's current state.
Example
{
"name": "xyz789",
"threshold": "abc123"
}
CounterStateInput
Description
List of name / value pairs used to determine the counter's current state.
Example
{
"name": "abc123",
"threshold": "xyz789"
}
CreateAccountCohortInput
Description
Defines the input for the CreateAccountCohort mutation.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
definition - AccountCohortInput!
|
Defines the input for the Account Cohort properties. |
Example
{
"providerId": "4",
"definition": AccountCohortInput
}
CreateAccountCohortResult
Types
| Union Types |
|---|
Example
AccountCohort
CreateAccountInput
Description
Input type of CreateAccount.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID
|
A unique identifier of an account. |
parentAccountId - ID
|
The parent account in an account hierarchy. |
customData - AWSJSON
|
Any custom data required by the account. |
friendsAndFamily - [String]
|
List of friends and family. |
creditLimit - Float
|
The limit an account can be credited to. It should be negative/zero for prepaid accounts and positive for postpaid accounts. |
notificationCreditLimitThresholds - [Float]
|
Thresholds of the default monetary balance on the account. Whenever the account balance goes lower than any of the values in the set a notification is sent. |
balances - [CreateBalanceInfoInput!]!
|
Balances types for account. |
postpaid - CreateAccountPostpaidPropertiesInput
|
If account is a postpaid account, i.e. creditLimit is greater than zero, this holds the postpaid properties |
activatedAt - AWSDateTime
|
Date of account activation. If it is set, then it’s used, else, it defaults to the invocation time of the mutation. |
Example
{
"providerId": "4",
"accountId": "4",
"parentAccountId": 4,
"customData": AWSJSON,
"friendsAndFamily": ["xyz789"],
"creditLimit": 123.45,
"notificationCreditLimitThresholds": [987.65],
"balances": [CreateBalanceInfoInput],
"postpaid": CreateAccountPostpaidPropertiesInput,
"activatedAt": AWSDateTime
}
CreateAccountPayload
Description
Return type of CreateAccount.
Fields
| Field Name | Description |
|---|---|
account - Account!
|
The created account. |
Example
{"account": Account}
CreateAccountPostpaidPropertiesInput
Description
An input type to hold the postpaid properties of accounts to enforce required fields for postpaid accounts only
Fields
| Input Field | Description |
|---|---|
timezone - String!
|
The timezone of the user in format (+/-hh:mm). This is a property for postpaid accounts only |
billingDayOfMonth - Int!
|
The day of month for resetting balance and units for account. Value is between 1 and 31 inclusive. This is a property for postpaid accounts only |
longFirstBillingCycle - Boolean!
|
Whether the first billing cycle is a long one, e.g. if billing DoM is on the 1st and the account was created on the 16th. If this value is true, it means that the first bill will be for 45 days, while if false, bill will be for 15 days only. This is a property for postpaid accounts only |
Example
{
"timezone": "xyz789",
"billingDayOfMonth": 987,
"longFirstBillingCycle": false
}
CreateAccountResult
Description
Return type of CreateAccount including all possible errors.
InvalidField (InvalidFriendsAndFamilyList)- Friends and family list can consist of 20 numbers maximum.InvalidField (InvalidFriendsAndFamilyNumber)- Friends and family list consists of invalid number. The only allowed format is E.164.InvalidField (InvalidJsonCreditLimit)- Cannot set credit limit from json.creditLimit. Must use creditLimit directly.InvalidField (InvalidTimezone)- Timezone format is wrong. It should be between -12:00 and +14:00.InvalidField (InvalidDayOfMonth)- Billing day of month should be between 1 and 31 inclusive.
Example
CreateAccountPayload
CreateBalanceInfoInput
Description
Input type for creating a new balance.
Fields
| Input Field | Description |
|---|---|
balanceTypeId - ID!
|
Balance type ID. |
priority - Float!
|
Priority of the balance. If there are multiple balances of the same type, the one with the highest priority will be used first. |
balanceValue - Float!
|
Value of the balance. |
limit - Float
|
The limit for the balance can be decimal only for rate-based ones. Unit-based ones should use full numbers, if not specified take from balanceTypeId. |
from - AWSDateTime
|
Start date of the balance. |
to - AWSDateTime
|
End date of the balance. |
Example
{
"balanceTypeId": 4,
"priority": 123.45,
"balanceValue": 123.45,
"limit": 123.45,
"from": AWSDateTime,
"to": AWSDateTime
}
CreateBalanceInput
Description
Input type for creating a new balance.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Provider ID. |
accountId - ID!
|
Account ID. |
balanceInfo - CreateBalanceInfoInput!
|
Balance info. |
Example
{
"providerId": 4,
"accountId": "4",
"balanceInfo": CreateBalanceInfoInput
}
CreateBalanceResult
Description
Return type of DeleteBalance including all possible errors.
InvalidField (InvalidLimit)- The limit has to be an integer value if it is not a rate based balance. Only rate based balance types can have decimal limits.AccountNotFound (AccountNotFound)- The specified account does not exist.BalanceTypeNotFound (BalanceTypeNotFound)- None of the balance type IDs provided does exist.
Example
BalancePayload
CreateBalanceTypeInput
Description
Input type for creating a new balance type.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Provider ID. |
name - String!
|
Name of the balance type. |
unitType - UnitType!
|
Unit type of the balance type. |
limit - Float
|
Limit of the balance type. If the balance is rate based, it is equivalent creditLimit. |
rateBased - Boolean!
|
Whether it is a rate based balance type like a monetary balance or an allowance based type that is in units. If it is a rate based type, then decimal limits are allowed, otherwise, they aren't. |
counters - [BalanceTypeCounterInput!]
|
List of balance type counter inputs of the balance type. |
Example
{
"providerId": 4,
"name": "xyz789",
"unitType": "TIME",
"limit": 123.45,
"rateBased": true,
"counters": [BalanceTypeCounterInput]
}
CreateBalanceTypeResult
Description
Return type of CreateBalanceType including all possible errors.
InvalidField (InvalidLimit)- The limit has to be an integer value if it is not a rate based balance type. Only rate based balance types can have decimal limits.InvalidField (InvalidCounterName)- The provided counter name must be between 1 and 50 characters and consist of letters, digits or special characters.InvalidField (InvalidCounterNames)- Counter names must be unique across the balance type.InvalidField (InvalidCounterStates)- Thresholds and names of states must be unique across the counter and one of the states must not have a threshold.
Types
| Union Types |
|---|
Example
BalanceTypePayload
CreateCampaignInput
Description
Input for creating a campaign.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
name - String!
|
The name of the campaign. |
description - String
|
A custom description of the campaign. |
campaignSchedule - CampaignScheduleInput
|
Specifies the schedule settings for a campaign. |
campaignEmailMessage - CampaignEmailMessageInput
|
Specifies the content for an email message that's sent to recipients of a campaign. |
offerIds - [ID!]
|
Array of Offers. |
cohortId - ID!
|
The cohort ID. |
Example
{
"providerId": "4",
"name": "abc123",
"description": "abc123",
"campaignSchedule": CampaignScheduleInput,
"campaignEmailMessage": CampaignEmailMessageInput,
"offerIds": [4],
"cohortId": 4
}
CreateCampaignPayload
Description
Return type of createCampaign.
Fields
| Field Name | Description |
|---|---|
campaign - Campaign!
|
The created campaign. |
Example
{"campaign": Campaign}
CreateCampaignResult
Description
Result of the CreateCampaign mutation.
Example
CreateCampaignPayload
CreateDeviceInput
Description
Input type of CreateDevice.
Example
{
"providerId": "4",
"accountId": 4,
"deviceId": 4,
"customData": AWSJSON
}
CreateDevicePayload
Description
Return type of CreateDevice.
Fields
| Field Name | Description |
|---|---|
device - Device!
|
The created device. |
Example
{"device": Device}
CreateDeviceResult
Description
Return type of CreateDevice including all possible errors.
Example
CreateDevicePayload
CreateFieldMappingInput
Description
Input type of CreateFieldMapping.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
path - String!
|
The path to the field you want to manipulate. For example, "transformedRequest.sMSChargingInformation.numberofMessagesSent". The path must start from either "transformedRequest." or "transformedResponse." and might be existing path or not existing. If provided path does not exist in request or response, only the last key should not exist. For example, "transformedResponse.invocationResult.message" is allowed, while "transformedResponse.invocationResult.message.text" is not allowed, because message is a new key already. It is possible to set a new field to a list. Originally SpEL does not support that, but we iterate over lists with provided [] after them. For example, "transformedRequest.multipleUnitUsage[].usedUnitContainer[].timeSpecificUnits", both multipleUnitUsage and usedUnitContainer are arrays, it means eventually field mapper will add to each item in these lists a new key "timeSpecificUnits". |
expr - String!
|
SpEL expression to generate the value(s). It must return one value, but also it can use the same expressions as "path" with []. For example, "originalRequest.multipleUnitUsage[].usedUnitContainer[].serviceSpecificUnits * 10". It is also possible to use "originalField" as a reference to original value if field exists. For example, "originalField + 10". |
Example
{
"providerId": "4",
"path": "transformedRequest.multipleUnitUsage[].ratingGroup",
"expr": "originalField?:100"
}
CreateFieldMappingPayload
Description
Return type of CreateFieldMapping.
Fields
| Field Name | Description |
|---|---|
fieldMapping - FieldMapping!
|
Created field mapping. |
Example
{"fieldMapping": FieldMapping}
CreateFieldMappingResult
Description
Return type of CreateFieldMapping including all possible errors.
InvalidField (InvalidFieldMappingPath)- The provided field mapping path cannot be compiled.InvalidField (InvalidFieldMappingExpression)- The provided field mapping SpEL expression cannot be compiled.
Example
CreateFieldMappingPayload
CreateOfferInput
Description
Input type of CreateOffer.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
offerId - ID
|
A new offer ID, if not provided then autogenerated. |
name - String!
|
The name of the offer. |
offerParameters - AWSJSON
|
The parameters that can be substituted into a message to customers. |
acceptanceLink - AWSURL!
|
Acceptance link for subscribers. The offer link takes the user to a company - operated page that makes the plan change without user input. It then redirects the browser to a telco - provided URL. |
Example
{
"providerId": "4",
"offerId": 4,
"name": "xyz789",
"offerParameters": AWSJSON,
"acceptanceLink": AWSURL
}
CreateOfferPayload
Description
Return type of CreateOffer.
Fields
| Field Name | Description |
|---|---|
offer - Offer!
|
The created offer. |
Example
{"offer": Offer}
CreateOfferResult
Description
Return type of CreateOffer including all possible errors.
Example
CreateOfferPayload
CreatePlanFromInitialTemplateInput
Description
Input type of CreatePlanFromInitialTemplate.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
planId - ID
|
A new plan ID. Autogenerated if not provided. |
version - String!
|
The name of the first version. |
name - String!
|
A name for a new plan. |
fee - Float
|
A fee that will be charged per specified recurring period. Recurring fee is charged first time after the first period. If you need to charge some fee on subscription you need to use purchaseFee. If not provided then no such fee is charged. |
firstUsageFee - Float
|
A fee that will be charged just once on first usage of the plan. If not provided then no such fee is charged. |
purchaseFee - Float
|
A fee that will be charged just once right after the subscription. If not provided then no such fee is charged. |
period - RecurringPeriodInput
|
A period when specified fee will be charged. If not provided then it is considered that plan never expires until cancellation and there are no recurring actions. |
services - [InitialTemplateServiceInput!]!
|
List of plan services. A plan service can only specify a monetary or unit rate but not both, they are exclusive. |
notificationPeriodsBeforeExpiration - [Int]
|
A set of periods in seconds when to send multiple notifications before the plan expires. |
notificationCreditLimitThresholds - [Float]
|
Thresholds of the credit limit on the account. Whenever the account goes lower than any of the values in the set a notification is sent. Removed and should be handled by using updateBalanceTypeCounter to add the counter to the default monetary balance on the account or createAccount/updateAccount with setting notificationCreditLimitThresholds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
renewalGracePeriod - [DurationInput]
|
Put a plan on hold for a limited grace period while waiting for a successful renewal. It is a sum of provided duration inputs. |
json - AWSJSON
|
Custom data in JSON format to be able to save and retrieve some configurations. |
priority - Float
|
Plan priority that determines the execution order for charging and rating. Considered as 0 if not provided. |
proratingOptions - ProratingOptionsInput
|
The prorating options for the plan |
Example
{
"providerId": "4",
"planId": "4",
"version": "xyz789",
"name": "xyz789",
"fee": 987.65,
"firstUsageFee": 123.45,
"purchaseFee": 987.65,
"period": RecurringPeriodInput,
"services": [InitialTemplateServiceInput],
"notificationPeriodsBeforeExpiration": [123],
"notificationCreditLimitThresholds": [987.65],
"renewalGracePeriod": [DurationInput],
"json": AWSJSON,
"priority": 123.45,
"proratingOptions": ProratingOptionsInput
}
CreatePlanFromInitialTemplateResult
Description
Return type of CreatePlanFromInitialTemplate including all possible errors.
InvalidField (InvalidExtendedRate))- In the roaming or long distance one of the inputs (origination or termination) must be provided.InvalidField (InvalidRatingGroup))- There is no provided rating group ID in the hierarchy or provided rating group ID is the Root.InvalidField (SubscriptionPolicy))- If "alignBillingToDoM" is set to false and "subscriptionPolicy" was anything other than NONE or emptyInvalidField (RefundPolicy))- If "alignBillingToDoM" is set to false and "refundPolicy" was anything other than NONE or emptyInvalidField (ProratingOptionsSetForNonMonthlyPlan))- If "alignBillingToDoM" is set to true for a non-monthly planCreatePlanValidationFailed (FeeIsNotRequired))- Fee is provided for a non recurring plan. Recurring plan must have a period specified and this period must be marked as recurring.ServiceFormatError (ServiceFormatError))- A new version of a plan is created based on the old format while a version with the new format exists. As soon as a plan uses the new balance format, all versions of the plan must use the new format.
Example
CreatePlanPayload
CreatePlanInput
Description
Input type of CreatePlan.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID
|
A new plan ID, if not provided then autogenerated. |
version - String!
|
The name of the first version. |
name - String!
|
A new plan human readable name. Not unique. |
planServices - [ID!]
|
A list of plan services for the first version of a new plan. |
counters - [CounterInput!]
|
List of counters for the first version of the plan. |
priority - Float
|
Plan priority that determines the execution order for charging and rating. Considered as 0 if not provided. |
Example
{
"providerId": 4,
"id": 4,
"version": "abc123",
"name": "xyz789",
"planServices": [4],
"counters": [CounterInput],
"priority": 123.45
}
CreatePlanPayload
Description
Return type of CreatePlan.
Fields
| Field Name | Description |
|---|---|
plan - Plan!
|
Created plan. |
Example
{"plan": Plan}
CreatePlanResult
Description
Return type of CreatePlan including all possible errors.
InvalidField (InvalidCounterName)- The provided counter name must be between 1 and 50 characters and consist of letters, digits or special characters.InvalidField (InvalidCounterNames)- Counter names must be unique across the plan.InvalidField (InvalidCounterStates)- Thresholds and names of states must be unique across the counter and one of the states must not have a threshold.InvalidField (InvalidCounterExpression)- The provided counter SPEL expression cannot be compiled.
Example
CreatePlanPayload
CreatePlanServiceInput
Description
Input type of CreatePlanService.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
planVersionId - ID!
|
A unique identifier of a plan version where to create a plan service. |
name - String!
|
The name of the plan service. |
ruleSets - RuleSetsInput!
|
The set of rules that the service has available. |
providedFields - [ProvidedFieldInput]
|
The provided fields which override values for the plan service. |
ratingGroupId - Int!
|
Rating group ID for the current plan service. |
balanceName - String
|
Balance name that will be used for charging. Also the same name is used for setting provisioning overrides values. If not specified it means that it will be auto generated. Replaced by balanceTypeIds and managedBalanceTypeId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
balanceTypeIds - [ID!]
|
List of unique balance type IDs the plan service uses for charging if a balance of that type exists on the account. Only a single balance type ID is managed by the service. Other balance type IDs could be, for example, manually added to the account and used if present. Order of the IDs specifies in what order the balances are applied on charging. This can not be specified at the same time as balanceName. Will becomes mandatory after balanceName is removed. |
managedBalanceTypeId - ID
|
The balance type ID that the plan service manages. Managing means that for this balance type ID, the service creates balances on subscription and renewal and handles rollover if specified. BalanceTypeIds must be provided if this is set and the referred balance type ID must be provided in balanceTypeIds. |
priority - Float
|
Plan service priority that determines the execution order for charging and rating. Considered as 0 if not provided. |
Example
{
"providerId": 4,
"planVersionId": "4",
"name": "abc123",
"ruleSets": RuleSetsInput,
"providedFields": [ProvidedFieldInput],
"ratingGroupId": 123,
"balanceName": "xyz789",
"balanceTypeIds": [4],
"managedBalanceTypeId": 4,
"priority": 123.45
}
CreatePlanServicePayload
Description
Return type of CreatePlanService.
Fields
| Field Name | Description |
|---|---|
planVersion - PlanVersion!
|
A plan version where a new plan service was created. |
planService - PlanService!
|
The new created plan service. |
Example
{
"planVersion": PlanVersion,
"planService": PlanService
}
CreatePlanServiceResult
Description
Return type of CreatePlanService including all possible errors.
BalanceTypeNotFound (BalanceTypeNotFound)- One of the provided balance type IDs does not exist.ServiceFormatError (ServiceFormatError)- A new version of a plan is created based on the old format while a version with the new format exists. As soon as a plan uses the new balance format, all versions of the plan must use the new format.InvalidField (InvalidRatingGroup)- There is no provided rating group ID in the hierarchy or provided rating group ID is the Root.InvalidField (InvalidBalanceInput)-balanceNameandbalanceTypeIdsandmanagedBalanceTypeIdcan't be provided together. EitherbalanceNameorbalanceTypeIdsandmanagedBalanceTypeIdmust be provided.InvalidField (InvalidBalanceTypeIds)- Balance Type Ids inbalanceTypeIdsmust be unique.InvalidField (InvalidManagedBalanceTypeId)-balanceTypeIdsdoes not include 'managedBalanceTypeId'.
Example
CreatePlanServicePayload
CreatePlanValidationFailed
Description
An error type to be thrown if a plan cannot be created out of the provided input.
DuplicateCounterName- Two or more counters in a service have the same name.MissingCounterStates- One or more counter has no states. At least one state is required.DuplicateCounterStateName- Two or more counter states in a counter have the same name.MissingDefaultCounterState- A counter has no default state (a state with no threshold).DuplicateCounterStateThreshold- Two or more states of a counter have the same threshold.WrongCountryCodeExpression- The country code expression defines a non-restricting value set.RoamingConfigOverlapping- The roaming configuration includes overlapping entries. A start () includes all countries, having an entry with "" and one with "US" is overlapping "*" needs to be replaced with "!US".LongDistanceConfigOverlapping- The long distance configuration includes overlapping entries. A start () includes all countries, having an entry with "" and one with "US" is overlapping "*" needs to be replaced with "!US".TooManyEntries- The entry list for the roaming and long distance configuration has too many entries. 10k entries is the maximum.PlanServiceAllowanceIsUnlimited- If "periodAllowance" is not provided, the plan service is considered unlimited. Both, "overage" and "offPeak", are not needed.AllowanceAndMonetaryRatesNotAllowed- A service in "services" can not specify both "unit" and "monetary". Only one of these entries is allowed.
Example
{
"errorCode": "abc123",
"errorMessage": "xyz789"
}
CreatePlanVersionFromInitialTemplateInput
Description
Input type of CreatePlanVersionFromInitialTemplate.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
planVersionId - ID!
|
An existing plan version ID to be updated or a base plan version ID for a new version. |
version - String!
|
The name of the new version. |
fee - Float
|
A fee that will be charged per specified recurring period. Recurring fee is charged first time after the first period. If you need to charge some fee on subscription you need to use purchaseFee. If not provided used from original version. |
firstUsageFee - Float
|
A fee that will be charged just once on first usage of the plan. If not provided used from original version. |
purchaseFee - Float
|
A fee that will be charged just once right after the subscription. If not provided used from original version. |
period - RecurringPeriodInput
|
A period when specified fee will be charged. If not provided used from original version. |
services - [InitialTemplateServiceInput!]
|
List of plan services. If not provided used from the original version. A plan service can only specify a monetary or unit rate but not both, they are exclusive. |
notificationPeriodsBeforeExpiration - [Int]
|
A set of periods in seconds when to send multiple notifications before the plan expires. If not provided and there's an original version, values are taken from there. |
notificationCreditLimitThresholds - [Float]
|
Thresholds of the credit limit on the account. Whenever the account goes lower than any of the values in the set a notification is sent. If not provided and there's an original version, values are taken from there. Removed and should be handled by using updateBalanceTypeCounter to add the counter to the default monetary balance on the account or createAccount/updateAccount with setting notificationCreditLimitThresholds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
renewalGracePeriod - [DurationInput]
|
Put a plan on hold for a limited grace period while waiting for a successful renewal. It is a sum of provided duration inputs. |
json - AWSJSON
|
Custom data in JSON format to be able to save and retrieve some configurations. If not provided used from the original version. |
priority - Float
|
Plan priority that determines the execution order for charging and rating. If not provided used from the original version. |
proratingOptions - ProratingOptionsInput
|
The prorating options for the plan |
Example
{
"providerId": 4,
"planVersionId": 4,
"version": "abc123",
"fee": 123.45,
"firstUsageFee": 987.65,
"purchaseFee": 987.65,
"period": RecurringPeriodInput,
"services": [InitialTemplateServiceInput],
"notificationPeriodsBeforeExpiration": [123],
"notificationCreditLimitThresholds": [123.45],
"renewalGracePeriod": [DurationInput],
"json": AWSJSON,
"priority": 123.45,
"proratingOptions": ProratingOptionsInput
}
CreatePlanVersionFromInitialTemplateResult
Description
Return type of CreatePlanVersionFromInitialTemplate including all possible errors.
InvalidField (InvalidExtendedRate)- In the roaming or long distance one of the inputs (origination or termination) must be provided.InvalidField (InvalidRatingGroup)- There is no provided rating group ID in the hierarchy or provided rating group ID is the Root.InvalidField (SubscriptionPolicy)- If "alignBillingToDoM" is set to false and "subscriptionPolicy" was anything other than NONE or emptyInvalidField (RefundPolicy)- If "alignBillingToDoM" is set to false and "refundPolicy" was anything other than NONE or emptyInvalidField (ProratingOptionsSetForNonMonthlyPlan)- If "alignBillingToDoM" is set to true for a non-monthly planCreatePlanValidationFailed (FeeIsNotRequired)- Fee is provided for a non recurring plan. Recurring plan must have a period specified and this period must be marked as recurring.ServiceFormatError (ServiceFormatError)- A new version of a plan is created based on the old format while a version with the new format exists. As soon as a plan uses the new balance format, all versions of the plan must use the new format.
Example
PlanVersionPayload
CreateUserInput
Description
Input type of CreateUser
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Service provider ID |
email - AWSEmail!
|
|
name - String!
|
The name of the user. Should be between 2 and 75 characters |
roleGroupMemberships - [RoleGroup!]!
|
The roles this user belong to |
phoneNumber - AWSPhone
|
The user's phone number |
jobTitle - String
|
The user's job title. If present, it should be between 2 and 50 characters |
expiry - AWSDateTime
|
The time when the user should expire. Used for temporary access. |
alertInterval - Int
|
The alarm interval in minutes when an email should be send to the user that access expires. Only used when expiry is specified. Can be 0 or not specified when expiry is specified which means no email is send. |
Example
{
"providerId": "4",
"email": AWSEmail,
"name": "abc123",
"roleGroupMemberships": ["Account_Query"],
"phoneNumber": AWSPhone,
"jobTitle": "abc123",
"expiry": AWSDateTime,
"alertInterval": 987
}
CreateUserResult
Description
Return type of CreateUser including all possible errors.
InvalidField (name)- Name should be at least two characters long and a maximum of seventy fiveInvalidField (jobTitle)- Job title should be at least two characters long and a maximum of fiftyInvalidField (expiry)- Expiry needs to be in the future and needs to be a valid datetime stringInvalidField (alertInterval)- The alert interval can't be negative
Example
SaveUserPayload
CreditAccountInput
Description
Input type of a Credit request.
Example
{
"providerId": "4",
"accountId": 4,
"amount": 123.45
}
CreditAccountPayload
Description
Return type of a Credit response.
Fields
| Field Name | Description |
|---|---|
account - Account!
|
The account with increased balance. |
Example
{"account": Account}
CreditAccountResult
Description
Return type of Credit including all possible errors.
AccountNotFound- Given account ID does not exist.InvalidField (InvalidPositiveNumber)- The provided number can be only a positive number.InvalidProviderLifecycleStage (InvalidProviderLifecycleStage)- SUSPENDED, TERMINATED or DELETED tenants are not allowed to perform requests.RateLimitExceeded (RateLimitExceeded)- The rate limit is crossed and request is rejected.
Example
CreditAccountPayload
DayOfMonthAlreadySet
Description
An error that is thrown when user tries to change DoM during the same cycle DoM was changed.
Example
{
"providerId": "4",
"accountId": "4",
"billingDayOfMonth": 123,
"errorCode": "abc123",
"errorMessage": "abc123"
}
DebitAccountFailed
DebitAccountInput
Description
Input type of a Debit Account request.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
A unique identifier of an account. |
amount - Float!
|
The amount we deduct from the monetary balance of the account. |
mode - DebitMode!
|
The debit mode. |
reservationInput - DebitReservationInput
|
Specific input details for a debit request with Mode RESERVE. Should not be provided for other modes. Will be ignored if it's not a reservation. If RESERVE mode is used and this input is not provided, it will default to 600 seconds. |
Example
{
"providerId": 4,
"accountId": "4",
"amount": 987.65,
"mode": "TEST",
"reservationInput": DebitReservationInput
}
DebitAccountPayload
Description
Return type of a Debit Account response.
Fields
| Field Name | Description |
|---|---|
account - Account!
|
The account with decreased balance. |
reservationId - ID
|
The id of the reservation for future reference in the Update Debit mutation. Provided only if debit was requested with DebitMode RESERVE. |
debitStatus - DebitStatus!
|
The status of the debit operation. Will return COMMITED in case of test mode. |
Example
{
"account": Account,
"reservationId": 4,
"debitStatus": "RESERVED"
}
DebitAccountResult
Description
Return type of DebitAccount including all possible errors.
DebitAccountFailed (QuotaLimitReached)- Not enough balance to deduct the debit amount from monetary balance.AccountNotFound- Given account ID does not exist.InvalidField (InvalidPositiveNumber)- The provided number can be only a positive number.InvalidProviderLifecycleStage (InvalidProviderLifecycleStage)- SUSPENDED, TERMINATED or DELETED tenants are not allowed to perform requests.RateLimitExceeded (RateLimitExceeded)- The rate limit is crossed and request is rejected.
Example
DebitAccountPayload
DebitMode
Description
All possible Debit Modes.
Values
| Enum Value | Description |
|---|---|
|
|
Test Mode - the account target balance is checked to determine if there are sufficient funds for a payment request but the debit is not committed. |
|
|
Reserve Mode - the debit request funds are reserved pending the associated transaction execution. The reservation can then be confirmed, canceled, or times out after a configurable period. |
|
|
Immediate Mode - the debit is applied immediately (assuming sufficient funds). |
Example
"TEST"
DebitReservationInput
Description
Input details for the debit requests with Mode RESERVE.
Fields
| Input Field | Description |
|---|---|
ttl - Int!
|
Time to live in seconds to specify the validity of a debit request with mode RESERVED. Needs to be a positive number. If not provided, it will default to 600 seconds. |
Example
{"ttl": 987}
DebitReservationNotFound
Description
An error type to be thrown if the debit reservation was not found.
Example
{
"providerId": "4",
"reservationId": "4",
"errorCode": "abc123",
"errorMessage": "abc123"
}
DebitStatus
Description
All possible Status for Debit.
Values
| Enum Value | Description |
|---|---|
|
|
The debit request funds are reserved pending the associated transaction execution. The reservation can then be confirmed, canceled, or times out after a configurable period. |
|
|
The debit request was committed either because it was requested as TEST or IMMEDIATE. |
|
|
The debit request was cancelled. |
|
|
The debit request timed out as it was not updated within the specified ttl. |
Example
"RESERVED"
DebitStatusInput
Description
All possible inputs for the status of the updateDebit API.
Values
| Enum Value | Description |
|---|---|
|
|
The debit request should be executed. If the transaction already expired, it won't be executed and DebitReservationNotFound is returned. |
|
|
The debit request should be canceled. |
Example
"CONFIRM"
DeleteAccountBalanceTypeCounterInput
Description
Input parameters for deleting a Balance Type Counter for an account. Deletes an AccountBalanceCounter record.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Provider ID. |
balanceTypeCounterId - ID!
|
The unique identifier for the Balance Type Counter to be deleted. |
balanceTypeId - ID!
|
The unique identifier for the Balance Type where the counter should be be deleted. |
accountId - ID!
|
The Account ID associated with the Balance Type Counter. |
Example
{
"providerId": "4",
"balanceTypeCounterId": 4,
"balanceTypeId": 4,
"accountId": 4
}
DeleteAccountBalanceTypeCounterPayload
Description
Return type when deleting a Balance Type Counter
Example
{
"deletedBalanceTypeCounterId": "4",
"accountId": 4,
"balanceTypeId": 4
}
DeleteAccountBalanceTypeCounterResult
Description
Return type of Balance Type Counter including all possible errors.
AccountNotFound (AccountNotFound)- The specified account does not exist.AccountBalanceTypeCounterNotFound (AccountBalanceTypeCounterNotFound)- The specified counter does not exist in the account.BalanceTypeNotFound (BalanceTypeNotFound)- The balance type ID provided does not exist.
Example
AccountNotFound
DeleteAccountCohortInput
DeleteAccountCohortPayload
DeleteAccountCohortResult
Example
DeleteAccountCohortPayload
DeleteAccountInput
DeleteAccountPayload
DeleteAccountResult
Description
Return type of DeleteAccount including all possible errors.
Example
DeleteAccountPayload
DeleteBalanceInput
DeleteBalancePayload
Description
Return type when deleting a balance
Fields
| Field Name | Description |
|---|---|
deletedBalanceId - ID!
|
The ID of the balance that has been deleted. |
Example
{"deletedBalanceId": 4}
DeleteBalanceResult
Description
Return type of DeleteBalance including all possible errors.
BalanceHasReferences (BalanceHasReferences)- The balance is used in an active plan and can't be deleted.BalanceNotFound (BalanceNotFound)- The balance ID provided does not exist.AccountNotFound (AccountNotFound)- The specified account does not exist.BalanceTypeNotFound (BalanceTypeNotFound)- None of the balance type IDs provided does exist.
Example
DeleteBalancePayload
DeleteBalanceTypeCounterInput
Description
Input parameters for deleting a Balance Type Counter.
Example
{"providerId": 4, "balanceTypeCounterId": 4, "balanceTypeId": 4}
DeleteBalanceTypeCounterPayload
Description
Return type when deleting a Balance Type Counter
Example
{
"deletedBalanceTypeCounterId": 4,
"balanceTypeId": "4"
}
DeleteBalanceTypeCounterResult
Description
Return type of Balance Type Counter including all possible errors.
BalanceTypeCounterHasReferences (BalanceTypeCounterHasReferences)- The balance type counter is used in an active plan and can't be deleted.BalanceTypeCounterNotFound (BalanceTypeCounterNotFound)- The balance type counter ID provided does not exist.BalanceTypeNotFound (BalanceTypeNotFound)- The balance type ID provided does not exist.
Example
DeleteBalanceTypeCounterPayload
DeleteBalanceTypeInput
DeleteBalanceTypePayload
Description
Return type when deleting a balance type
Fields
| Field Name | Description |
|---|---|
deletedBalanceTypeId - ID!
|
The ID of the balance type that has been deleted. |
Example
{"deletedBalanceTypeId": "4"}
DeleteBalanceTypeResult
Description
Return type of DeleteBalanceType including all possible errors.
BalanceTypeHasReferences (BalanceTypeHasReferences)- The balance type is used in an active plan and can't be deleted.BalanceTypeNotFound (BalanceTypeNotFound)- The balance type ID provided does not exist.
Example
DeleteBalanceTypePayload
DeleteCampaignInput
DeleteCampaignPayload
DeleteCampaignResult
Description
Result of the DeleteCampaign mutation.
Example
DeleteCampaignPayload
DeleteDeviceInput
Description
Input type of DeleteDevice.
Example
{
"providerId": 4,
"accountId": "4",
"deviceId": "4"
}
DeleteDevicePayload
DeleteDeviceResult
Description
Return type of DeleteDevice including all possible errors.
Example
DeleteDevicePayload
DeleteFieldMappingInput
DeleteFieldMappingPayload
Description
Return type of DeleteFieldMapping.
Fields
| Field Name | Description |
|---|---|
deletedPath - ID!
|
A path of a field mapping that has been deleted. |
Example
{"deletedPath": 4}
DeleteFieldMappingResult
Description
Return type of DeleteFieldMapping including all possible errors.
Example
DeleteFieldMappingPayload
DeleteOfferInput
DeleteOfferPayload
DeleteOfferResult
Description
Return type of DeleteOffer including all possible errors.
Example
DeleteOfferPayload
DeletePlanInput
DeletePlanPayload
Description
Return type of DeletePlan.
Example
{"deletedPlanId": 4, "deletedPlanVersions": [4], "deletedPlanServices": [4]}
DeletePlanResult
Description
Return type of DeletePlan including all possible errors.
Example
DeletePlanPayload
DeletePlanServiceInput
DeletePlanServicePayload
Description
Return type of DeletePlanService.
Fields
| Field Name | Description |
|---|---|
deletedPlanServiceId - ID!
|
The unique identifier of the deleted plan service. |
planVersion - PlanVersion!
|
The plan version it was deleted from. |
Example
{
"deletedPlanServiceId": "4",
"planVersion": PlanVersion
}
DeletePlanServiceResult
Description
Return type of DeletePlanService including all possible errors.
Example
DeletePlanServicePayload
DeletePlanVersionInput
DeletePlanVersionPayload
DeletePlanVersionResult
Description
Return type of DeletePlanVersion including all possible errors.
Example
DeletePlanVersionPayload
DeleteUserInput
DeleteUserPayload
DeleteUserResult
Description
Return type of DeleteUser including all possible errors.
UserNotFound- Given user ID does not exist in the tenant, even if user ID exists in CognitoUserIsReadOnly(UsersCanNotDeleteThemSelves)- User tried to delete his own record
Example
DeleteUserPayload
DeployFieldMappingsInput
Description
Input type of DeployFieldMappings.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
paths - [String!]
|
Deploys only provided list of fields. If not provided then all field mappings are replaced. If provided then all configurations applied after "from" date are updated with provided set of fields. |
from - AWSDateTime
|
The date when current set of field mappings take effect in the system. If not provided then considered as now. All the configurations after this date are either updated with provided paths or removed if paths are not provided. |
Example
{
"providerId": "4",
"paths": ["abc123"],
"from": AWSDateTime
}
DeployFieldMappingsPayload
Description
Return type of DeployFieldMappings.
Fields
| Field Name | Description |
|---|---|
deployedFieldMapping - DeployedFieldMapping!
|
Example
{"deployedFieldMapping": DeployedFieldMapping}
DeployFieldMappingsResult
Description
Return type of DeployFieldMappings including all possible errors.
InvalidField (InvalidFutureDate)- The provided date cannot be in the past.
Example
DeployFieldMappingsPayload
DeployPlanVersionInput
Description
Input type of DeployPlanVersion.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
planVersionId - ID!
|
A unique identifier of a planVersion version to deploy. |
migrateFromVersions - [ID!]
|
The list of plan version IDs to migrate from to this new deployed version. Automatically upgrade already subscribed accounts to the new version. Not required for a new deployment. If not specified considered as no auto migration is required. |
Example
{
"providerId": 4,
"planVersionId": 4,
"migrateFromVersions": ["4"]
}
DeployPlanVersionResult
Description
Return type of DeployPlanVersion including all possible errors.
Example
PlanVersionPayload
DeployedFieldMapping
Description
Field mappings that have been deployed and take effect starting from some date.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
from - AWSDateTime!
|
The date when current set of field mappings take effect in the system. |
fieldMappings - FieldMappingConnection!
|
A list of deployed field mappings. |
Example
{
"providerId": 4,
"from": AWSDateTime,
"fieldMappings": FieldMappingConnection
}
DeployedFieldMappingConnection
Description
The connection type for DeployedFieldMapping.
Fields
| Field Name | Description |
|---|---|
edges - [DeployedFieldMappingEdge!]
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [DeployedFieldMappingEdge],
"pageInfo": PageInfo
}
DeployedFieldMappingEdge
Description
An edge in a connection.
Fields
| Field Name | Description |
|---|---|
node - DeployedFieldMapping!
|
The item at the end of the edge. |
cursor - String!
|
A cursor for use in pagination. |
Example
{
"node": DeployedFieldMapping,
"cursor": "abc123"
}
DeploymentVerificationFailed
Description
An error type to be thrown if a plan failed verification on deployment.
Example
{
"providerId": "4",
"planVersionId": "4",
"errorCode": "abc123",
"errorMessage": "abc123"
}
Device
Description
The smallest unit in the Charging Engine which represents an end user and belongs to an account.
Example
{
"providerId": 4,
"id": "4",
"account": Account,
"customData": AWSJSON
}
DeviceAlreadyExists
Description
An error type to be thrown if a device with provided ID already exists.
Example
{
"deviceId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
DeviceIdSelector
Description
Possible values for deviceIdSelector.
Values
| Enum Value | Description |
|---|---|
|
|
To take the device id from PDUSessionChargingInformation > userInformation > servedGpsi |
|
|
To take the device id from subscriberIdentifier |
Example
"SERVED_GPSI"
DeviceNotFound
Description
An error type to be thrown if a device was not found.
Example
{
"providerId": 4,
"deviceId": 4,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
DeviceResult
Description
Return type of Device including all possible errors.
Types
| Union Types |
|---|
Example
Device
Duration
Description
A time-based amount of time, such as '34.5 seconds'.
Fields
| Field Name | Description |
|---|---|
amount - Int!
|
The amount of the duration, measured in terms of the unit. |
unit - PeriodType!
|
The unit that the duration is measured in. |
Example
{"amount": 987, "unit": "HOUR"}
DurationInput
Description
Input type for some time period. For example, 2w, 1d, 30m, etc.
Fields
| Input Field | Description |
|---|---|
type - PeriodType!
|
Determines a period. |
value - Int!
|
The number of period types to calculate the final time period. |
Example
{"type": "HOUR", "value": 123}
Error
EventDataRecord
Description
Represents an event in the Charging Engine.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
A unique identifier of a record. |
createdAt - AWSDateTime!
|
When the record was created. |
action - EventDataRecordAction!
|
Event action. |
customData - AWSJSON
|
Any custom data of the record. |
eventData - AWSJSON
|
Arbitrary event data. |
Example
{
"providerId": "4",
"id": 4,
"createdAt": AWSDateTime,
"action": "subscribeToPlan",
"customData": AWSJSON,
"eventData": AWSJSON
}
EventDataRecordAccountConnection
Description
The connection type for EventDataRecord.
Fields
| Field Name | Description |
|---|---|
edges - [EventDataRecordEdge!]
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
account - Account!
|
All of the EDRs belong to this account. |
Example
{
"edges": [EventDataRecordEdge],
"pageInfo": PageInfo,
"account": Account
}
EventDataRecordAccountConnectionResult
Description
Return type of EventDataRecordAccountConnection including all possible errors.
Example
EventDataRecordAccountConnection
EventDataRecordAction
Description
Possible actions in event data records.
Values
| Enum Value | Description |
|---|---|
|
|
An account has been subscribed to some plan. |
|
|
An existing subscription has been activated. |
|
|
An existing subscription has been changed. |
|
|
An existing subscription has been canceled. |
|
|
An existing subscription has expired. |
|
|
A recurring fee has been charged from an account. |
|
|
A purchase fee has been charged from an account. |
|
|
A first usage fee has been charged from an account. |
|
|
A credit event has happened. |
|
|
A debit event has happened. |
|
|
A charge event has happened. |
|
|
A counter threshold has been crossed and a notification has been sent. |
|
|
A counter threshold has been crossed and a notification has been sent. (Old) |
|
|
A device has been deleted. |
|
|
An account has been created. |
|
|
A device has been created. |
|
|
An account has been updated. |
|
|
An account has been deleted. |
|
|
A device as been updated. |
|
|
A new plan has been created. |
|
|
A new plan version has been created. |
|
|
A plan version has been updated. |
|
|
A plan has been updated. |
|
|
A plan service has been created. |
|
|
A plan has been copied. |
|
|
A plan has been deleted. |
|
|
A plan has been deployed. |
|
|
A plan version has been archived. |
|
|
A plan version has been deleted. |
|
|
A plan has been made assignable. |
|
|
A plan has been made not assignable. |
|
|
A plan service has been copied. |
|
|
A plan service has been deleted. |
|
|
A plan service has been updated. |
|
|
The rating group hierarchy has been updated. |
|
|
A new rating group hierarchy has been deployed. |
|
|
An account's churn score has been updated. |
Example
"subscribeToPlan"
EventDataRecordDeviceConnection
Description
The connection type for EventDataRecord.
Fields
| Field Name | Description |
|---|---|
edges - [EventDataRecordEdge!]
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
device - Device!
|
All of the EDRs belong to this device. |
Example
{
"edges": [EventDataRecordEdge],
"pageInfo": PageInfo,
"device": Device
}
EventDataRecordDeviceConnectionResult
Description
Return type of EventDataRecordDeviceConnection including all possible errors.
Example
EventDataRecordDeviceConnection
EventDataRecordEdge
Description
An edge in a connection.
Fields
| Field Name | Description |
|---|---|
node - EventDataRecord!
|
The item at the end of the edge. |
cursor - String!
|
A cursor for use in pagination. |
Example
{
"node": EventDataRecord,
"cursor": "abc123"
}
EventDataRecordFilter
Description
Filtering options for event data records.
Fields
| Input Field | Description |
|---|---|
types - [EventDataRecordType!]
|
If not provided, then it is considered that all types are included. |
from - AWSDateTime
|
Return EDRs created only at this time or later. |
to - AWSDateTime
|
Return EDRs created only earlier than this time. |
Example
{
"types": ["CHARGING"],
"from": AWSDateTime,
"to": AWSDateTime
}
EventDataRecordType
Description
Possible types of event data records.
Values
| Enum Value | Description |
|---|---|
|
|
Charging EDRs are created as part of "init" and "update" charging requests. |
|
|
Billing EDRs are created as part of "terminate" charging requests, and event based requests. |
|
|
Account EDRs are created as part of executing any account mutation, and each EDR includes the time of the transaction, the identifier of the user who made the change, the action taken, the changed account identifier and the changed attributes. |
|
|
Device EDRs are created as part of executing any device mutation, and each EDR includes the time of the transaction, the identifier of the user who made the change, the action taken, the changed device identifier and the changed attributes. |
|
|
Churn score EDRs are created for providers that have churnFeatureEnabled set to true on a regular basis when calculating the churn score for each account. An EDR record is created for each update to every account. Each EDR contains the time of the update, the account ID, account type (prepaid/postpaid), the previous churn score and the current churn score. |
Example
"CHARGING"
ExportJob
Description
Type for export job.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
ID for the restore job. |
providerId - ID!
|
Provider ID. |
status - ExportJobStatus!
|
Status of the job. |
createdAt - AWSDateTime!
|
The creation time of the job. |
createdBy - AWSEmail!
|
The email of the person who triggered the export job. |
modifiedAt - AWSDateTime!
|
Time of the last update of the record. Will be the same as the creation date when record is created. |
Example
{
"id": 4,
"providerId": "4",
"status": "STARTED",
"createdAt": AWSDateTime,
"createdBy": AWSEmail,
"modifiedAt": AWSDateTime
}
ExportJobStatus
Description
Status of a export job.
Values
| Enum Value | Description |
|---|---|
|
|
The job was started, but not yet completed. |
|
|
The job ended successfully. |
|
|
The job ended with a failure. |
Example
"STARTED"
ExtendedRate
Description
Rate configuration for roaming or long distance calls.
Fields
| Field Name | Description |
|---|---|
origination - Origination
|
Information about A and B parties for MO calls. |
termination - Termination
|
Information about A and B parties for MT calls. |
rate - Rate
|
Rate configuration. If not provided means roaming for this origination is denied. |
Example
{
"origination": Origination,
"termination": Termination,
"rate": Rate
}
ExtendedRateInput
Description
Information about the rate for a plan. Either origination or termination must be provided. If no rate is provided, it is assumed that the rate is for long distance calls and origination is denied.
Fields
| Input Field | Description |
|---|---|
origination - OriginationInput
|
Information about A and B parties for MO calls. Either origination or termination must be provided. |
termination - TerminationInput
|
Information about A and B parties for MT calls. Either origination or termination must be provided. |
rate - RateInput
|
Rate configuration. If not provided means long distance for this number and origination is denied. |
Example
{
"origination": OriginationInput,
"termination": TerminationInput,
"rate": RateInput
}
External
Description
External entity and the main purpose of it is to provide some data to rules.
Fields
| Field Name | Description |
|---|---|
name - String!
|
The name of the entity. |
providedFields - [ProvidedField]
|
The fields for which it provides data. |
Example
{
"name": "abc123",
"providedFields": [ProvidedField]
}
FairUsagePolicyCounter
Description
Defines a fair usage policy counter with its states
Fields
| Field Name | Description |
|---|---|
name - String!
|
Unique name of the counter within the plan |
states - [FairUsagePolicyState!]!
|
Counter states used in the Initial Template |
Example
{
"name": "abc123",
"states": [FairUsagePolicyState]
}
FairUsagePolicyCounterInput
Description
Input type for FairUsagePolicyCounter.
Fields
| Input Field | Description |
|---|---|
name - String!
|
Unique name of the counter in the plan that contains it. |
states - [FairUsagePolicyStateInput!]!
|
Fair usage counter states. |
Example
{
"name": "abc123",
"states": [FairUsagePolicyStateInput]
}
FairUsagePolicyState
FairUsagePolicyStateInput
FieldDataType
Description
The possible values for the field data type.
Values
| Enum Value | Description |
|---|---|
|
|
Data type of the field that represents simple string. |
|
|
Data type of the field that represents any number. |
|
|
Data type of the field that represents any boolean. |
|
|
Data type of the field that represents complex objects in a form of a json string. |
Example
"STRING"
FieldMapping
Description
Field mapping.
Fields
| Field Name | Description |
|---|---|
path - String!
|
The path to the field you want to manipulate. For example, "transformedRequest.sMSChargingInformation.numberofMessagesSent". The path must start from either "transformedRequest." or "transformedResponse." and might be existing path or not existing. If provided path does not exist in request or response, only the last key should not exist. For example, "transformedResponse.invocationResult.message" is allowed, while "transformedResponse.invocationResult.message.text" is not allowed, because message is a new key already. It is possible to set a new field to a list. Originally SpEL does not support that, but we iterate over lists with provided [] after them. For example, "transformedRequest.multipleUnitUsage[].usedUnitContainer[].timeSpecificUnits", both multipleUnitUsage and usedUnitContainer are arrays, it means eventually field mapper will add to each item in these lists a new key "timeSpecificUnits". |
expr - String!
|
SpEL expression to generate the value(s). It must return one value, but also it can use the same expressions as "path" with []. For example, "originalRequest.multipleUnitUsage[].usedUnitContainer[].serviceSpecificUnits * 10". It is also possible to use "originalField" as a reference to original value if field exists. For example, "originalField + 10". |
field - ProvidedField!
|
Field provided by these field mapping. |
Example
{
"path": "transformedRequest.multipleUnitUsage[].ratingGroup",
"expr": "originalField?:100",
"field": ProvidedField
}
FieldMappingAlreadyExists
Description
An error type to be thrown if a field mapping for provided path already exists.
Example
{
"path": "abc123",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
FieldMappingConnection
Description
The connection type for FieldMapping.
Fields
| Field Name | Description |
|---|---|
edges - [FieldMappingEdge!]
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [FieldMappingEdge],
"pageInfo": PageInfo
}
FieldMappingEdge
Description
An edge in a connection.
Fields
| Field Name | Description |
|---|---|
node - FieldMapping!
|
The item at the end of the edge. |
cursor - String!
|
A cursor for use in pagination. |
Example
{
"node": FieldMapping,
"cursor": "abc123"
}
FieldMappingHasReferences
Description
An error type to be thrown if a field mapping has references preventing it from deletion.
Fields
| Field Name | Description |
|---|---|
fieldMapping - FieldMapping!
|
A field mapping with has references preventing it from deletion. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"fieldMapping": FieldMapping,
"errorCode": "abc123",
"errorMessage": "abc123"
}
FieldMappingNotFound
Description
An error type to be thrown if a field mapping was not found.
Example
{
"providerId": 4,
"path": "xyz789",
"errorCode": "abc123",
"errorMessage": "abc123"
}
FieldNotFound
Description
An error type to be thrown if a field was not found.
Fields
| Field Name | Description |
|---|---|
fieldName - String!
|
A field with provided name was not found. |
fieldDataType - FieldDataType!
|
A field with provided data type was not found. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"fieldName": "xyz789",
"fieldDataType": "STRING",
"errorCode": "abc123",
"errorMessage": "abc123"
}
FieldProvider
Description
All possible types of field providers.
Types
| Union Types |
|---|
Example
Rule
Float
Description
The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.
Example
123.45
GetAccountBalanceTypeCountersInput
Description
Input parameters for retrieving Balance Type Counter notifications for an account.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
The account ID associated with the Balance Type Counter. Retrieves the Balance Type Counter records from the account. |
balanceTypeId - ID!
|
The Balance Type associated with the counter. Retrieves the Balance Type Counter records for the Balance Type. |
balanceTypeCounterId - ID
|
The optional unique identifier of the Balance Type Counter. If specified, retrieves only the Balance Type Counter record with that ID. |
Example
{
"providerId": "4",
"accountId": "4",
"balanceTypeId": 4,
"balanceTypeCounterId": "4"
}
GetAccountCohortInput
GetAccountCohortResult
Example
AccountCohort
GetAccountCohortsInput
Description
Defines the input for the GetAccountCohorts query.
Example
{
"providerId": 4,
"first": 123,
"after": "abc123"
}
GetAccountCohortsResult
Types
| Union Types |
|---|
Example
AccountCohortConnection
GetBalanceTypeCountersInput
Description
Input parameters for retrieving Balance Type Counters.
Fields
| Input Field | Description |
|---|---|
balanceTypeCounterId - ID
|
The optional unique identifier for the Balance Type Counter. If provided retrieves the single Balance Type Counter from the Balance Type. |
balanceTypeId - ID!
|
The Balance Type associated with the counter. Retrieves the Balance Type Counter records from the Balance Type. |
providerId - ID!
|
Provider ID. |
Example
{
"balanceTypeCounterId": "4",
"balanceTypeId": "4",
"providerId": "4"
}
GetBalanceTypeCountersResult
Description
Return type of several BalanceTypeCounter including all possible errors.
BalanceTypeCounterNotFound (BalanceTypeCounterNotFound)- The balance type ID provided does not exist.BalanceTypeNotFound (BalanceTypeNotFound)- The balance type ID provided does not exist.
Example
BalanceTypeCountersPayload
GetBalanceTypeInput
GetBalanceTypeResult
Description
Return type of GetBalanceType including all possible errors.
BalanceTypeNotFound (BalanceTypeNotFound)- The balance type ID provided does not exist.
Types
| Union Types |
|---|
Example
BalanceTypePayload
GetBalanceTypesInput
Description
Input type for getting balance types data. Returns only IDs that are found. If none of the specified are found, returns an error.
Example
{"balanceTypeIds": ["4"], "providerId": 4}
GetBalanceTypesPayload
Description
Balance type return type for getting multiple balance types.
Fields
| Field Name | Description |
|---|---|
balanceTypeIds - [BalanceTypePayload!]
|
IDs for the found balance types. |
Example
{"balanceTypeIds": [BalanceTypePayload]}
GetBalanceTypesResult
Description
Return type of GetBalanceTypes including all possible errors.
BalanceTypeNotFound (BalanceTypeNotFound)- None of the balance type IDs provided does exist.
Types
| Union Types |
|---|
Example
GetBalanceTypesPayload
GetBulkUploadMetadataInput
GetBulkUploadMetadataPayload
Description
Return type of BulkUploadMetadata
Fields
| Field Name | Description |
|---|---|
status - BulkUploadMetadataJobStatus!
|
The status of the job. |
Example
{"status": "CREATED"}
GetBulkUploadMetadataResult
Types
| Union Types |
|---|
Example
GetBulkUploadMetadataPayload
GetCampaignInput
GetCampaignResult
Description
Return type of get campaign query including all possible errors.
Types
| Union Types |
|---|
Example
Campaign
GetCampaignStatisticsInput
Description
Input for getting a list of statistics.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
campaignId - String!
|
The ID of the campaign associated with the interaction. |
first - Int!
|
Returns the first n elements from the list. |
after - String
|
Returns the elements in the list that come after the specified cursor. |
Example
{
"providerId": "4",
"campaignId": "abc123",
"first": 987,
"after": "xyz789"
}
GetCampaignsInput
Description
Input for getting a list of campaigns with pagination.
Example
{
"providerId": "4",
"first": 987,
"after": "abc123"
}
GetCampaignsResult
Description
Return type of get campaigns query including all possible errors.
Types
| Union Types |
|---|
Example
CampaignConnection
GetMyExportJobsInput
Description
Input type for GetMyExportJobs.
Fields
| Input Field | Description |
|---|---|
jobId - ID
|
Optional ID to get info of a specific job. If not passed, then we list jobs. |
from - AWSDate
|
Optional date/time in UTC to get the jobs created after (inclusive). If jobId is used, job exists, but doesn't match 'from', then an empty result is returned. |
to - AWSDate
|
Date/time in UTC to get the jobs created before (inclusive). If jobId is used, job exists, but doesn't match 'to', then an empty result is returned. |
Example
{
"jobId": "4",
"from": AWSDate,
"to": AWSDate
}
GetMyExportJobsPayload
Description
Return type for GetMyExportJobs.
Fields
| Field Name | Description |
|---|---|
jobs - [ExportJob]!
|
Array of export jobs, sorted in a descending order by date and limited to 100 results. |
Example
{"jobs": [ExportJob]}
GetMyExportJobsResult
Description
Return type of GetMyExportJobs including all possible errors.
InvalidField(from)- from field must be before to.
Types
| Union Types |
|---|
Example
GetMyExportJobsPayload
GetMyProviderConfigResult
Description
Return type of GetMyProviderConfig including all possible errors.
InvalidProviderLifecycleStage- Provider user can't call API when provider lifecycle stage is CREATING, SUSPENDED, TERMINATED or DELETED.
Types
| Union Types |
|---|
Example
ProviderConfig
GetMyRestoreJobsInput
Description
Input type for GetMyRestoreJobs.
Fields
| Input Field | Description |
|---|---|
jobId - ID
|
Optional ID to get info of a specific job. If not passed, then we list jobs. |
form - AWSDate
|
Optional date/time in UTC to get the jobs created after (inclusive). If jobId is used, job exists, but doesn't match 'from', then an empty result is returned. |
to - AWSDate
|
Date/time in UTC to get the jobs created before (inclusive). If jobId is used, job exists, but doesn't match 'to', then an empty result is returned. |
Example
{
"jobId": 4,
"form": AWSDate,
"to": AWSDate
}
GetMyRestoreJobsPayload
Description
Return type for GetMyRestoreJobs.
Fields
| Field Name | Description |
|---|---|
jobs - [RestoreJob]!
|
The ID for the job. |
Example
{"jobs": [RestoreJob]}
GetMyRestoreJobsResult
Description
Return type of GetMyRestoreJobs including all possible errors.
InvalidField(from)- from field must be before to.
Types
| Union Types |
|---|
Example
GetMyRestoreJobsPayload
GetOffersResult
Description
Return type of Offer including all possible errors.
Types
| Union Types |
|---|
Example
OfferConnection
GetRelatedAccountsByDevicePayload
Description
Return type of getRelatedAccountsByDevice
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. This is retrieved from cognito group named Provider_{providerId} |
deviceId - ID!
|
Device id for which the related accounts are returned |
accounts - [Account!]!
|
Accounts the device is related to |
Example
{
"providerId": "4",
"deviceId": "4",
"accounts": [Account]
}
GetRelatedAccountsByDeviceResult
Description
Return type of GetRelatedAccountsByDevice including all possible errors.
DeviceNotFound- Given device ID does not exist in the tenant
Types
| Union Types |
|---|
Example
GetRelatedAccountsByDevicePayload
GetUserInput
GetUserPayload
Description
Return type of a User for queries fetching a user or listing a group of them
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. This is retrieved from cognito group named Provider_{providerId} |
userId - ID!
|
Cognito User ID |
email - AWSEmail!
|
User email |
name - String
|
The name of the user |
roleGroupMemberships - [RoleGroup!]!
|
The roles this user belong to |
profilePicture - ProfilePhoto
|
The user's profile picture. If profile picture exists, it will always contain a pre-signed URL to download profile picture. It will contain pre-signed URL to upload picture only for the updateUserProfile mutation |
phoneNumber - AWSPhone
|
The user's phone number |
jobTitle - String
|
The user's job title |
softwareMfaEnabled - Boolean!
|
Whether the user has enabled software MFA or not |
expiry - AWSDateTime
|
The time when the user should expire. Used for temporary access. |
alertInterval - Int
|
The alarm interval in minutes when an email should be send to the user that access expires. Only used when expiry is specified. Can be 0 or not specified when expiry is specified which means no email is send. |
Example
{
"providerId": "4",
"userId": 4,
"email": AWSEmail,
"name": "abc123",
"roleGroupMemberships": ["Account_Query"],
"profilePicture": ProfilePhoto,
"phoneNumber": AWSPhone,
"jobTitle": "xyz789",
"softwareMfaEnabled": true,
"expiry": AWSDateTime,
"alertInterval": 987
}
GetUserResult
Description
Return type of GetUser including all possible errors.
UserNotFound- Given user ID does not exist for the given provider, even if provider does not exist.
Example
GetUserPayload
HttpHeader
HttpMethod
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example
"PUT"
ID
Description
The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.
Example
"4"
InitialTemplateInstance
Description
All the parameters with which initial template was used to create a plan.
Fields
| Field Name | Description |
|---|---|
fee - Float
|
A fee that will be charged per specified recurring period. Recurring fee is charged first time after the first period. If you need to charge some fee on subscription you need to use purchaseFee. |
firstUsageFee - Float
|
A fee that will be charged just once on first usage of the plan. |
purchaseFee - Float
|
A fee that will be charged just once right after the subscription. |
period - RecurringPeriod
|
A period when specified fee will be charged. |
services - [InitialTemplateService!]!
|
List of plan services. A plan service can only specify a monetary or unit rate but not both, they are exclusive. |
notificationPeriodsBeforeExpiration - [Int]
|
A set of periods in seconds when to send multiple notifications before the plan expires. |
notificationCreditLimitThresholds - [Float]
|
Thresholds of the credit limit on the account. Whenever the account goes lower than any of the values in the set a notification is sent. Removed and should be handled by using updateBalanceTypeCounter to add the counter to the default monetary balance on the account or createAccount/updateAccount with setting notificationCreditLimitThresholds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
renewalGracePeriod - [Duration]
|
Put a plan on hold for a limited grace period while waiting for a successful renewal. It is a sum of provided durations. |
json - AWSJSON
|
Custom data in JSON format to be able to save and retrieve some configurations. |
priority - Float
|
Plan priority that determines the execution order for charging and rating. |
proratingOptions - ProratingOptions
|
The prorating options of the plan |
Example
{
"fee": 987.65,
"firstUsageFee": 123.45,
"purchaseFee": 123.45,
"period": RecurringPeriod,
"services": [InitialTemplateService],
"notificationPeriodsBeforeExpiration": [123],
"notificationCreditLimitThresholds": [123.45],
"renewalGracePeriod": [Duration],
"json": AWSJSON,
"priority": 123.45,
"proratingOptions": ProratingOptions
}
InitialTemplateService
Description
All the parameters for each service in initial template. If parameters free, unit and monetary are not specified then service is denied completely. A plan service can only specify a monetary or unit rate but not both, they are exclusive.
Fields
| Field Name | Description |
|---|---|
ratingGroupId - Int!
|
Custom rating group ID for this service. |
priority - Float
|
Plan service priority that determines the execution order for charging and rating. |
unit - UnitAllowance
|
Unit balance configuration for this service. Only unit or monetary can be specified but not both, they are exclusive. Roaming and long distance calls use this unit balance unless it is not restricted by from and to countries. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. Replaced by managedBalance, rateBalance, and balanceTypeIds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01.
|
monetary - MonetaryRate
|
If this rate is specified it will be used if no other plan service specifies a higher priority rate. Premium numbers are only applicable to monetary rates. Only unit or monetary can be specified but not both, they are exclusive. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. Replaced by managedBalance, rateBalance, and balanceTypeIds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01.
|
balanceTypeIds - [ID!]
|
List of unique balance type IDs the plan service uses for charging if a balance of that type exists on the account. Only a single balance type ID is managed by the service. Other balance type IDs could be, for example, manually added to the account and used if present. Order of the IDs specifies in what order the balances are applied on charging. This field will become mandatory after unit and monetary have been deprecated. |
managedBalance - ManagedBalance
|
Managed balance configuration for this service. Roaming and long distance calls use this unit balance unless it is not restricted by from and to countries. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. If the field is not specified, the service will not have a recurring allowance or rollover. For fair usage and unlimited plans, a balance type counter should be added to the specified balance type ID. |
rateBalance - RateBalance
|
Rate based balance configuration for this service. The configuration is used for any rate based balance type based on the order of input for the balance types. Premium numbers are only applicable to rate based balances. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. |
workingHours - [TimePeriod!]
|
A list of time periods when service is applicable. |
fromCountriesExpr - String
|
Applicable only for unit allowance. For monetary allowance, refer to roaming and longDistance fields in MonetaryRate. If provided, the origination party must be located in one of these countries for the service allowance and rating to be used. ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
toCountriesExpr - String
|
Applicable only for unit allowance. For monetary allowance, refer to roaming and longDistance fields in MonetaryRate. If provided, the termination party must belong to an operator in one of these countries for the service allowance and rating to be used. ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
bNumbersExpr - String
|
If provided, the MOC calls are restricted by the provided expression. It contains service(s). For example, for voice it consists of number(s) and it must match calledPartyAddress in 5G. Negation can be used. For example, !+12024561111. Conjunction can be used. For example, (+12024561111,+12024561414). |
denyOtherServices - Boolean
|
If provided and current service can serve a request (even if it does not have enough balance to do that), then no other services next in the order will be executed. If both unit and monetary are not provided then requests that match provided ratingGroupId, workingHours, fromCountriesExpr, toCountriesExpr and bNumbersExpr are immediately failed without execution of all next services. By default it is false. |
restrictions - [ServiceConstraint]
|
The service allowance and rating can only be used if all the constraints listed are met. |
Example
{
"ratingGroupId": 123,
"priority": 987.65,
"unit": UnitAllowance,
"monetary": MonetaryRate,
"balanceTypeIds": [4],
"managedBalance": ManagedBalance,
"rateBalance": RateBalance,
"workingHours": [TimePeriod],
"fromCountriesExpr": "xyz789",
"toCountriesExpr": "abc123",
"bNumbersExpr": "abc123",
"denyOtherServices": false,
"restrictions": ["IS_ON_NET"]
}
InitialTemplateServiceInput
Description
Input type for creating a service from a template. If parameters free, unit and monetary are not specified then service is denied completely. A plan service can only specify a monetary or unit rate but not both, they are exclusive.
Fields
| Input Field | Description |
|---|---|
ratingGroupId - Int!
|
Rating group ID for this service. |
priority - Float
|
Plan priority that determines the execution order for charging and rating. Considered as 0 (the highest) if not provided. |
unit - UnitAllowanceInput
|
Unit balance configuration for this service. Only unit or monetary can be specified but not both, they are exclusive. Roaming and long distance calls use this unit balance unless it is not restricted by from and to countries. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. Replaced by managedBalance, rateBalance, and balanceTypeIds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01.
|
monetary - MonetaryRateInput
|
If this rate is specified it will be used if no other plan service specifies a higher priority rate. Premium numbers are only applicable to monetary rates. Only unit or monetary can be specified but not both, they are exclusive. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. Replaced by managedBalance, rateBalance, and balanceTypeIds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01.
|
balanceTypeIds - [ID!]
|
List of unique balance type IDs the plan service uses for charging if a balance of that type exists on the account. Only a single balance type ID is managed by the service. Other balance type IDs could be, for example, manually added to the account and used if present. Order of the IDs specifies in what order the balances are applied on charging. This field will become mandatory after unit and monetary have been deprecated. |
managedBalance - ManagedBalanceInput
|
Managed balance configuration for this service. Roaming and long distance calls use this unit balance unless it is not restricted by from and to countries. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. If the field is not specified, the service will not have a recurring allowance or rollover. For fair usage and unlimited plans, a balance type counter should be added to the specified balance type ID. |
rateBalance - RateBalanceInput
|
Rate based balance configuration for this service. The configuration is used for any rate based balance type based on the order of input for the balance types. Premium numbers are only applicable to rate based balances. Only unit and monetary or managedBalance and rateBalance can be specified but not both, they are exclusive. |
workingHours - [TimePeriodInput!]
|
A list of time periods when service is applicable. |
fromCountriesExpr - String
|
Applicable only for unit allowance. For monetary allowance, refer to roaming and longDistance fields in MonetaryRate. If provided, the origination party must be located in one of these countries for the service allowance and rating to be used. ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
toCountriesExpr - String
|
Applicable only for unit allowance. For monetary allowance, refer to roaming and longDistance fields in MonetaryRate. If provided, the termination party must belong to an operator in one of these countries for the service allowance and rating to be used. ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
bNumbersExpr - String
|
If provided, the MOC calls are restricted by the provided expression. It contains service(s). For example, for voice it consists of number(s) and it must match calledPartyAddress in 5G. Negation can be used. For example, !+12024561111. Conjunction can be used. For example, (+12024561111,+12024561414). |
denyOtherServices - Boolean
|
If provided and current service can serve a request (even if it does not have enough balance to do that), then no other services next in the order will be executed. If both unit and monetary are not provided then requests that match provided ratingGroupId, workingHours, fromCountriesExpr, toCountriesExpr and bNumbersExpr are immediately failed without execution of all next services. By default it is false. |
restrictions - [ServiceConstraint]
|
The service allowance and rating can only be used if all the constraints listed are met. Note: Do not include opposite restrictions together at the same time, such as IS_ON_NET and IS_OFF_NET. |
Example
{
"ratingGroupId": 987,
"priority": 987.65,
"unit": UnitAllowanceInput,
"monetary": MonetaryRateInput,
"balanceTypeIds": [4],
"managedBalance": ManagedBalanceInput,
"rateBalance": RateBalanceInput,
"workingHours": [TimePeriodInput],
"fromCountriesExpr": "xyz789",
"toCountriesExpr": "xyz789",
"bNumbersExpr": "abc123",
"denyOtherServices": true,
"restrictions": ["IS_ON_NET"]
}
Int
Description
The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Example
987
InternalServerError
InvalidField
Description
An error type to be thrown if a value of a field in an input fails a validation.
Example
{
"fieldName": "abc123",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
InvalidProviderLifecycleStage
Description
An error type to be thrown if a provider's lifecycle state is not valid to execute the operation
Fields
| Field Name | Description |
|---|---|
providerLifecycleStage - ProviderLifecycleStage!
|
A name of the provider lifecycle stage. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"providerLifecycleStage": "CREATING",
"errorCode": "abc123",
"errorMessage": "abc123"
}
IpNotFound
IpRestrictionInput
Description
The IP Input
Fields
| Input Field | Description |
|---|---|
ip - String!
|
IP |
Example
{"ip": "xyz789"}
IpRestrictionPayload
Description
The IP Payload
Fields
| Field Name | Description |
|---|---|
ip - String!
|
IP |
Example
{"ip": "xyz789"}
KeyValue
KeyValueInput
Description
Input type of KeyValue. This type is used in overrides which are key value pairs which can be nested. There are two main levels: plan and plan service.
- A simple plan override is the following: { name: "recurring period", value: "HOUR" }
- A nested override is used for plan services and can be like the following: "{ name: \"TemplateService0\", value: {\"recurring units":\"120\"} }" Pay attention to the format, it is a JSON, but as an escaped string because only strings are allowed as values. The same applies to inner values, such as recurring units, it must be also a string. A nested override uses the override field and value as the high-level value field with value. The following override fields are valid:
Field ReferencedField Type Scope Format alignToBillingDoM ProratingOptionsInput. alignToBillingDoM BOOLEAN Plan old and new fee fee NUMBER Plan old and new first usage fee firstUsageFee NUMBER Plan old firstUsageFee firstUsageFee NUMBER Plan new number of periods RecurringPeriodInput. numberOfPeriods NUMBER Plan old numberOfPeriods RecurringPeriodInput. numberOfPeriods NUMBER Plan new recurring RecurringPeriodInput. recurring BOOLEAN Plan old and new recurring period RecurringPeriodInput. numberOfPeriods STRING Plan old recurringPeriod RecurringPeriodInput. numberOfPeriods STRING Plan new refundPolicy ProratingOptionsInput. refundPolicy STRING(NONE /FULL_REFUND /TIME_BASED) Plan old and new renewalGracePeriod InitialTemplateInstance. renewalGracePeriod STRING Plan old and new subscriptionPolicy ProratingOptionsInput. subscriptionPolicy STRING (NONE / TIME_BASED) Plan old and new purchase fee InitialTemplateInstance. purchaseFee NUMBER Plan old purchaseFee InitialTemplateInstance. purchaseFee NUMBER Plan new recurring units UnitAllowance. periodAllowance NUMBER Plan- Service old periodAllowance ManagedBalance. periodAllowance NUMBER Plan -Service new rollover UnitAllowance.rollover BOOLEAN Plan Service rollover ManagedBalance.rollover BOOLEAN Plan Service maxRolloverPeriods ManagedBalance. maxRolloverPeriods NUMBER Plan-Service new rolloverAllowance ManagedBalance. rolloverAllowance NUMBER Plan-Service new rolloverMaxAllowance ManagedBalance. rolloverMaxAllowance NUMBER Plan-Service new chargeNewBalanceFirst ManagedBalance. chargeNewBalanceFirst BOOLEAN Plan-Service new workingHours InitialTemplateServiceInput. workingHours JSON Plan-Service old and new
Example
{
"name": "abc123",
"value": "abc123"
}
ListUserPayload
Description
Return type of a User for queries fetching a user or listing a group of them
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. This is retrieved from cognito group named Provider_{providerId} |
userId - ID!
|
Cognito User ID |
email - AWSEmail!
|
User email |
name - String
|
The name of the user |
phoneNumber - AWSPhone
|
The user's phone number |
jobTitle - String
|
The user's job title |
expiry - AWSDateTime
|
The time when the user should expire. Used for temporary access. |
alertInterval - Int
|
The alarm interval in minutes when an email should be send to the user that access expires. Only used when expiry is specified. Can be 0 or not specified when expiry is specified which means no email is send. |
Example
{
"providerId": "4",
"userId": "4",
"email": AWSEmail,
"name": "abc123",
"phoneNumber": AWSPhone,
"jobTitle": "xyz789",
"expiry": AWSDateTime,
"alertInterval": 123
}
ListUsersConnection
Description
The connection type for ListUsers
Fields
| Field Name | Description |
|---|---|
edges - [ListUsersEdge!]!
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [ListUsersEdge],
"pageInfo": PageInfo
}
ListUsersEdge
Description
An edge in a user connection.
Fields
| Field Name | Description |
|---|---|
node - ListUserPayload!
|
The item at the end of the edge. |
cursor - String
|
A cursor for use in pagination. |
Example
{
"node": ListUserPayload,
"cursor": "abc123"
}
ListUsersResult
Description
Return type of ListUsers including all possible errors.
Types
| Union Types |
|---|
Example
ListUsersConnection
ManagedBalance
Description
Input type for the managed balance.
Fields
| Field Name | Description |
|---|---|
managedBalanceTypeId - ID!
|
The balance type ID that the plan service manages. Managing means that for this balance type ID, the service creates balances on subscription and renewal and handles rollover if specified. BalanceTypeIds must be provided if this is set and the referred balance type ID must be provided in balanceTypeIds. For fair usage and unlimited plans, a balance type counter should be added to the specified balance type ID. |
periodAllowance - Float
|
Value that the managed balance type ID will be created with. Can only be a decimal value for rate based balance types. If not specified or zero it means that it is unlimited. For fair usage and unlimited plans, a balance type counter should be added to the specified balance type ID. |
rollover - Boolean
|
An action to perform with balances from a previous period. Rollover if true or reset if false. False by default. |
maxRolloverPeriods - Int
|
The maximum number of periods a rollover is maintained. If rollover is set but this value isn't, then it is one period. This value uses a multiple of the plan period. For example, if the plan period is 2 weeks, then a value of 3 means the rollover balance is valid for 6 weeks. |
rolloverAllowance - Float
|
The maximum allowance that is rolled over per period. If rollover is set but this value isn't, then it is unlimited. |
rolloverMaxAllowance - Float
|
The maximum allowance that is rolled over for all periods specified by maxRolloverPeriods. If the overall rollover balance is larger then it will be removed from balances in the same order as chargeNewBalanceFirst is set. |
chargeNewBalanceFirst - Boolean
|
Determines if the newest balance or the oldest balance is charged first. False By default which means the oldest balance is charged first. |
Example
{
"managedBalanceTypeId": 4,
"periodAllowance": 123.45,
"rollover": false,
"maxRolloverPeriods": 123,
"rolloverAllowance": 123.45,
"rolloverMaxAllowance": 123.45,
"chargeNewBalanceFirst": true
}
ManagedBalanceInput
Description
Input type for the managed balance.
Fields
| Input Field | Description |
|---|---|
managedBalanceTypeId - ID!
|
The balance type ID that the plan service manages. Managing means that for this balance type ID, the service creates balances on subscription and renewal and handles rollover if specified. BalanceTypeIds must be provided if this is set and the referred balance type ID must be provided in balanceTypeIds. For fair usage and unlimited plans, a balance type counter should be added to the specified balance type ID. |
periodAllowance - Float
|
Value that the managed balance type ID will be created with. Can only be a decimal value for rate based balance types. If not specified or zero it means that it is unlimited. For fair usage and unlimited plans, a balance type counter should be added to the specified balance type ID. |
rollover - Boolean
|
An action to perform with balances from a previous period. Rollover if true or reset if false. False by default. |
maxRolloverPeriods - Int
|
The maximum number of periods a rollover is maintained. If rollover is set but this value isn't, then it is one period. This value uses a multiple of the plan period. For example, if the plan period is 2 weeks, then a value of 3 means the rollover balance is valid for 6 weeks. |
rolloverAllowance - Float
|
The maximum allowance that is rolled over per period. If rollover is set but this value isn't, then it is unlimited. |
rolloverMaxAllowance - Float
|
The maximum allowance that is rolled over for all periods specified by maxRolloverPeriods. If the overall rollover balance is larger then it will be removed from balances in the same order as chargeNewBalanceFirst is set. |
chargeNewBalanceFirst - Boolean
|
Determines if the newest balance or the oldest balance is charged first. False By default which means the oldest balance is charged first. |
Example
{
"managedBalanceTypeId": "4",
"periodAllowance": 987.65,
"rollover": false,
"maxRolloverPeriods": 987,
"rolloverAllowance": 987.65,
"rolloverMaxAllowance": 123.45,
"chargeNewBalanceFirst": true
}
MetricDimensionType
Description
The metric dimension type.
Values
| Enum Value | Description |
|---|---|
|
|
Match values greater than the specified value. |
|
|
Match values less than the specified value. |
|
|
Match values greater than or equal to the specified value. |
|
|
Match values less than or equal to the specified value. |
|
|
Match values equal to the specified value. |
Example
"GREATER_THAN"
MigrationAlreadyInProgress
Description
An error type to be thrown if there is already migration in progress for this plan.
Example
{
"providerId": 4,
"planVersionId": 4,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
ModelMutation
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
Example
"create"
ModelMutationMap
ModelOperation
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
Example
"create"
ModelQuery
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
Example
"get"
ModelQueryMap
ModelSubscriptionLevel
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
Example
"off"
ModelSubscriptionMap
Fields
| Input Field | Description |
|---|---|
onCreate - [String]
|
|
onUpdate - [String]
|
|
onDelete - [String]
|
|
level - ModelSubscriptionLevel
|
Example
{
"onCreate": ["abc123"],
"onUpdate": ["xyz789"],
"onDelete": ["xyz789"],
"level": "off"
}
MonetaryRate
Description
Rate configuration for monetary balance.
Fields
| Field Name | Description |
|---|---|
rate - Rate
|
Rate configuration. If not specified then monetary usage is denied (except roaming and long distance which are configured independently). |
roaming - [ExtendedRate!]
|
Roaming configuration. If not specified then roaming will be denied. |
longDistance - [ExtendedRate!]
|
Long distance configuration. If not specified then long distance will be denied. |
notificationThreshold - Float
|
Monetary threshold to define when to send a notification. If not specified then no notification is required. |
Example
{
"rate": Rate,
"roaming": [ExtendedRate],
"longDistance": [ExtendedRate],
"notificationThreshold": 123.45
}
MonetaryRateInput
Description
Input type for rate configuration for monetary balance.
Fields
| Input Field | Description |
|---|---|
rate - RateInput
|
Rate configuration. If not specified then monetary usage is denied (except roaming and long distance which are configured independently). |
roaming - [ExtendedRateInput!]
|
Roaming configuration. If not specified then roaming will be denied. |
longDistance - [ExtendedRateInput!]
|
Long distance configuration. If not specified then long distance will be denied. |
notificationThreshold - Float
|
Monetary threshold to define when to send a notification. If not specified then no notification is required. |
Example
{
"rate": RateInput,
"roaming": [ExtendedRateInput],
"longDistance": [ExtendedRateInput],
"notificationThreshold": 123.45
}
MultipleSubscriptions
Description
An error type to be thrown if an account has multiple subscriptions and "from" and "to" were not specified.
Example
{
"planVersionId": 4,
"errorCode": "abc123",
"errorMessage": "abc123"
}
Node
Offer
Description
An offer for the tenant to present to its subscribers.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
A unique identifier of an offer. |
name - String!
|
The name of the offer. |
offerParameters - AWSJSON
|
The parameters that can be substituted into a message to customers. |
acceptanceLink - AWSURL!
|
Acceptance link for subscribers. The offer link takes the user to a company - operated page that makes the plan change without user input. It then redirects the browser to a telco - provided URL. |
createdAt - AWSDateTime!
|
When it was created. |
createdBy - String!
|
By whom it was created. |
modifiedAt - AWSDateTime!
|
When it was last modified. |
modifiedBy - String!
|
By whom it was modified. |
Example
{
"providerId": 4,
"id": 4,
"name": "xyz789",
"offerParameters": AWSJSON,
"acceptanceLink": AWSURL,
"createdAt": AWSDateTime,
"createdBy": "xyz789",
"modifiedAt": AWSDateTime,
"modifiedBy": "xyz789"
}
OfferAlreadyExists
Description
An error type to be thrown if an offer with provided ID already exists.
Example
{
"providerId": 4,
"offerId": "4",
"errorCode": "abc123",
"errorMessage": "xyz789"
}
OfferConnection
Description
The connection type for Rule.
Fields
| Field Name | Description |
|---|---|
edges - [OfferEdge!]
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [OfferEdge],
"pageInfo": PageInfo
}
OfferEdge
OfferIsReadOnly
OfferNotFound
Description
An error type to be thrown if an offer was not found.
Example
{
"providerId": "4",
"offerId": 4,
"errorCode": "abc123",
"errorMessage": "abc123"
}
OrderDirection
Description
Possible directions in which to order a list of items when provided an orderBy argument.
Values
| Enum Value | Description |
|---|---|
|
|
Specifies an ascending order for a given orderBy argument. |
|
|
Specifies a descending order for a given orderBy argument. |
Example
"ASC"
Origination
Fields
| Field Name | Description |
|---|---|
aNumberCurrentCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
bNumberHomeCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
Example
{
"aNumberCurrentCountryExpr": "abc123",
"bNumberHomeCountryExpr": "xyz789"
}
OriginationInput
Description
Information about A and B parties for MO calls.
Fields
| Input Field | Description |
|---|---|
aNumberCurrentCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
bNumberHomeCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
Example
{
"aNumberCurrentCountryExpr": "xyz789",
"bNumberHomeCountryExpr": "abc123"
}
PageInfo
Description
Information about pagination in a connection.
Fields
| Field Name | Description |
|---|---|
hasPreviousPage - Boolean!
|
When paginating backwards, are there more items? |
hasNextPage - Boolean!
|
When paginating forwards, are there more items? |
startCursor - String
|
When paginating backwards, the cursor to continue. |
endCursor - String
|
When paginating forwards, the cursor to continue. |
Example
{
"hasPreviousPage": false,
"hasNextPage": true,
"startCursor": "abc123",
"endCursor": "abc123"
}
PeriodType
Description
The possible values for recurring period.
Values
| Enum Value | Description |
|---|---|
|
|
Per hour. |
|
|
Per day. |
|
|
Per week. |
|
|
Per month. |
Example
"HOUR"
Plan
Description
An object to represent a set of plan services that contains all the information to perform charging / crediting operations.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
A unique identifier of a plan. |
name - String!
|
A human readable name. Not unique. |
versions - PlanVersionConnection!
|
A list of versions of the plan. |
Arguments
|
|
Example
{
"providerId": "4",
"id": "4",
"name": "abc123",
"versions": PlanVersionConnection
}
PlanAlreadyExists
Description
An error type to be thrown if a plan with provided ID already exists.
Example
{
"planId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
PlanConnection
Description
The connection type for Plan.
Fields
| Field Name | Description |
|---|---|
edges - [PlanEdge!]!
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [PlanEdge],
"pageInfo": PageInfo
}
PlanEdge
PlanIsReadOnly
Description
An error type to be thrown if the plan is the initial one preventing it from deletion.
Example
{
"providerId": 4,
"planId": 4,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
PlanNotFound
Description
An error type to be thrown if a plan was not found.
Example
{
"providerId": "4",
"planId": 4,
"errorCode": "abc123",
"errorMessage": "abc123"
}
PlanOrder
Description
Ways in which lists of plans can be ordered upon return.
Fields
| Input Field | Description |
|---|---|
direction - OrderDirection!
|
The direction in which to order issues by the specified field. |
field - PlanOrderField!
|
The field in which to order plans by. |
Example
{"direction": "ASC", "field": "PRIORITY"}
PlanOrderField
Description
Properties by which plan connections can be ordered.
Values
| Enum Value | Description |
|---|---|
|
|
Order plans by last deployed plan version priority. |
|
|
Order plans by the plan name. |
|
|
Order plans by last deployed plan version state. |
|
|
Order plans by last deployed plan version modification date. |
|
|
Order plans by last deployed plan version subscribers, i.e. refCount. |
|
|
Order plans by last deployed plan version purchase fee. |
|
|
Order plans by last deployed plan version renewal fee. |
Example
"PRIORITY"
PlanResult
Description
Return type of Plan including all possible errors.
Types
| Union Types |
|---|
Example
Plan
PlanService
Description
An item that consists of rules and belongs to a plan to provide information how to do charging / crediting for one particular service type.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
A unique identifier of a plan service. |
name - String!
|
The name of the plan service. |
ruleSets - RuleSets!
|
The set of rules that the service has available. |
providedFields - [ProvidedField]
|
The provided fields which override values for the plan service. |
ratingGroupId - Int!
|
Rating group ID for the current plan service. |
balanceName - String
|
Balance name that will be used for charging. Also the same name is used for setting provisioning overrides values. Replaced by balanceTypeIds and managedBalanceTypeId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
balanceTypeIds - [ID!]
|
List of unique balance type IDs the plan service uses for charging if a balance of that type exists on the account. Only a single balance type ID is managed by the service. Other balance type IDs could be, for example, manually added to the account and used if present. Order of the IDs specifies in what order the balances are applied on charging. This can not be specified at the same time as balanceName. Will becomes mandatory after balanceName is removed. |
managedBalanceTypeId - ID
|
The balance type ID that the plan service manages. Managing means that for this balance type ID, the service creates balances on subscription and renewal and handles rollover if specified. BalanceTypeIds must be provided if this is set and the referred balance type ID must be provided in balanceTypeIds. |
priority - Float
|
Plan service priority that determines the execution order for charging and rating. Considered as 0 if not provided. |
Example
{
"providerId": "4",
"id": "4",
"name": "abc123",
"ruleSets": RuleSets,
"providedFields": [ProvidedField],
"ratingGroupId": 123,
"balanceName": "abc123",
"balanceTypeIds": ["4"],
"managedBalanceTypeId": 4,
"priority": 123.45
}
PlanServiceConnection
Description
The connection type for PlanService.
Fields
| Field Name | Description |
|---|---|
edges - [PlanServiceEdge!]!
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [PlanServiceEdge],
"pageInfo": PageInfo
}
PlanServiceEdge
Description
An edge in a connection.
Fields
| Field Name | Description |
|---|---|
node - PlanService!
|
The item at the end of the edge. |
cursor - String!
|
A cursor for use in pagination. |
Example
{
"node": PlanService,
"cursor": "xyz789"
}
PlanServiceIsReadOnly
Description
An error type to be thrown if a plan service is read only. For example, when a version is already deployed.
Example
{
"providerId": "4",
"planServiceId": 4,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
PlanServiceNotFound
Description
An error type to be thrown if a planService was not found.
Example
{
"providerId": "4",
"planServiceId": 4,
"errorCode": "abc123",
"errorMessage": "xyz789"
}
PlanState
Description
Possible states of a planVersion.
Values
| Enum Value | Description |
|---|---|
|
|
A planVersion was just created and currently editable. |
|
|
A planVersion was already deployed and is no longer editable, but cannot be assigned to an Account. |
|
|
A planVersion can be assigned to an Account. |
|
|
A planVersion cannot be assigned to an Account. |
|
|
A planVersion is no longer used by any Accounts. |
Example
"NEW"
PlanVersion
Description
Versioned part of the planVersion.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
A unique identifier of a plan version. |
version - String!
|
String representation of the version. |
basedOn - PlanVersion
|
If the current version is based on another version. |
plan - Plan
|
Plan of the plan version. |
state - PlanState!
|
Each version has its own state. |
refCount - Int!
|
The number of assignments to Accounts this version has. |
planServices - [PlanService!]!
|
A list of Plan Services of the planVersion version. |
createdAt - AWSDateTime!
|
When it was created. |
createdBy - String!
|
By whom it was created. |
modifiedAt - AWSDateTime!
|
When it was last modified. |
modifiedBy - String!
|
By whom it was modified. |
deployedAt - AWSDateTime
|
When it was deployed. |
deployedBy - String
|
By whom it was deployed. |
template - TemplateInstance
|
If the plan version was created by using template this attribute contains all the parameters with which it was created. |
counters - [Counter]
|
List of counters defined in the plan. |
priority - Float
|
Plan version priority that determines the execution order for charging and rating. |
Example
{
"providerId": "4",
"id": "4",
"version": "xyz789",
"basedOn": PlanVersion,
"plan": Plan,
"state": "NEW",
"refCount": 987,
"planServices": [PlanService],
"createdAt": AWSDateTime,
"createdBy": "abc123",
"modifiedAt": AWSDateTime,
"modifiedBy": "abc123",
"deployedAt": AWSDateTime,
"deployedBy": "xyz789",
"template": InitialTemplateInstance,
"counters": [Counter],
"priority": 987.65
}
PlanVersionAlreadyExists
Description
An error type to be thrown if a plan version already exists in a plan.
Fields
| Field Name | Description |
|---|---|
plan - Plan!
|
A plan where the version already exists. |
planVersion - PlanVersion!
|
Already existing plan version. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"plan": Plan,
"planVersion": PlanVersion,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
PlanVersionConnection
Description
The connection type for PlanVersion.
Fields
| Field Name | Description |
|---|---|
edges - [PlanVersionEdge!]!
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [PlanVersionEdge],
"pageInfo": PageInfo
}
PlanVersionEdge
Description
An edge in a connection.
Fields
| Field Name | Description |
|---|---|
node - PlanVersion!
|
The item at the end of the edge. |
cursor - String!
|
A cursor for use in pagination. |
Example
{
"node": PlanVersion,
"cursor": "xyz789"
}
PlanVersionHasReferences
Description
An error type to be thrown if a plan version has references preventing it from deletion.
Fields
| Field Name | Description |
|---|---|
planVersion - PlanVersion!
|
A plan version with has references preventing it from deletion. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"planVersion": PlanVersion,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
PlanVersionIsNotAssignable
Description
An error type to be thrown if a plan cannot be assigned.
Example
{
"providerId": "4",
"planVersionId": 4,
"errorCode": "abc123",
"errorMessage": "xyz789"
}
PlanVersionIsReadOnly
Description
An error type to be thrown if a plan version is read only. For example, when the version is already deployed.
Fields
| Field Name | Description |
|---|---|
planVersion - PlanVersion!
|
A plan version which is read only. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"planVersion": PlanVersion,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
PlanVersionNotFound
Description
An error type to be thrown if a plan was not found.
Example
{
"providerId": 4,
"planVersionId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
PlanVersionOrder
Description
Ways in which lists of plan versions can be ordered upon return.
Fields
| Input Field | Description |
|---|---|
direction - OrderDirection!
|
The direction in which to order issues by the specified field. |
field - PlanVersionOrderField!
|
The field in which to order versions by. |
Example
{"direction": "ASC", "field": "ID"}
PlanVersionOrderField
Description
Properties by which version connections can be ordered.
Values
| Enum Value | Description |
|---|---|
|
|
Order versions by id. |
|
|
Order versions by update time. |
|
|
Order versions by deploy time. |
Example
"ID"
PlanVersionPayload
Description
Return type of PlanVersion.
Fields
| Field Name | Description |
|---|---|
planVersion - PlanVersion!
|
Created plan version. |
Example
{"planVersion": PlanVersion}
PlanVersionResult
Description
Return type of PlanVersion including all possible errors.
Example
PlanVersion
PlanVersionUpdateAlreadyInProgress
Description
An error type to be the plan version update is in progress.
Example
{
"providerId": "4",
"planVersionId": 4,
"errorCode": "abc123",
"errorMessage": "xyz789"
}
PlanVersionWrongTransition
Description
An error type to be thrown if transition from one state to another is not possible.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A plan version for a provided provider ID cannot be transitioned. |
planVersionId - ID!
|
A plan version with a provided plan version ID cannot be transitioned. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"providerId": "4",
"planVersionId": "4",
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
PostpaidFieldInPrepaidAccount
Description
An error type to be thrown when creating account if postpaid properties were not set when creditLimit of account is positive.
Example
{
"errorCode": "abc123",
"errorMessage": "abc123"
}
PostpaidPropertiesRequired
Description
An error type to be thrown when creating account if postpaid properties were not set when creditLimit of account is positive.
Example
{
"errorCode": "abc123",
"errorMessage": "xyz789"
}
PredictionsActions
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
Example
"identifyText"
ProfilePhoto
ProratingOptions
Description
The prorating options for a plan for postpaid accounts
Fields
| Field Name | Description |
|---|---|
alignToBillingDoM - Boolean
|
Whether to align the plan billing to the account billing day of month. If true, then subscription offer and refund policies must be filled, |
subscriptionPolicy - SubscriptionPolicy
|
The subscription policy for plans that align billing to the account billing day of month. Default is NONE. |
refundPolicy - RefundPolicy
|
The refund policy for plans that align billing to the account billing day of month. Default is NONE. |
Example
{
"alignToBillingDoM": true,
"subscriptionPolicy": "NONE",
"refundPolicy": "NONE"
}
ProratingOptionsInput
Description
Input for the prorating options for a plan for postpaid accounts
Fields
| Input Field | Description |
|---|---|
alignToBillingDoM - Boolean
|
Whether to align the plan billing to the account billing day of month. If false, then subscription and refund policies should always be NONE |
subscriptionPolicy - SubscriptionPolicy
|
The subscription policy for plans that align billing to the account billing day of month. Default is NONE. |
refundPolicy - RefundPolicy
|
The refund policy for plans that align billing to the account billing day of month. Default is NONE. |
Example
{
"alignToBillingDoM": true,
"subscriptionPolicy": "NONE",
"refundPolicy": "NONE"
}
ProvidedField
Description
A field that is provided by some entity and can be used by rules.
Fields
| Field Name | Description |
|---|---|
name - String!
|
The name of the field. |
dataType - FieldDataType!
|
The type of the field. |
usedByRules - RuleConnection
|
Which rule uses the field. |
customData - String
|
The custom data of the field. |
Example
{
"name": "xyz789",
"dataType": "STRING",
"usedByRules": RuleConnection,
"customData": "xyz789"
}
ProvidedFieldInput
Description
Input type of ProvidedField.
Fields
| Input Field | Description |
|---|---|
name - String!
|
The name of the field. |
dataType - FieldDataType!
|
The type of the field. |
customData - String!
|
The custom data of the field. |
Example
{
"name": "xyz789",
"dataType": "STRING",
"customData": "abc123"
}
ProviderConfig
Description
Configurations of a tenant.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
The ID of the tenant. |
name - String!
|
The name of the tenant. |
commonName - String!
|
The common name that will be used in the SSL certificates of the tenant. |
homeNetworks - String
|
The home networks for the tenant. Required if onNet calls should be supported. |
emergencyNumbers - [String]
|
List of emergency numbers. |
lifecycleStage - ProviderLifecycleStage!
|
The lifecycle stage of the tenant |
allowedLifecycleTransitions - [ProviderLifecycleStage!]!
|
The allowed lifecycle transitions for the tenant. |
limits - [ApiLimitsConfig]
|
API limit configurations for 4G, 5G and GraphQL calls. |
churnFeatureEnabled - Boolean
|
Whether account churn calculation feature is enabled or not. |
frequencyOfModelUpdate - Int
|
The frequency of which the ML model is updated in days. |
frequencyOfChurnCalculation - Int
|
The frequency of calculating the accounts churn in days. |
lookbackPeriod - Int
|
The number of weeks to use for look-back data. |
parent - ID
|
The parent of this tenant. |
subtenants - [ID]
|
The list of all subtenants of a provider. |
vpcEndpointsIds - [String]
|
The list of approved VPC Endpoints IDs to be used by provider to communicate with Diameter Adapter by using non-TLS connection. |
activeAlarms - [TenantAlarmType]
|
The tenant specific alarms the provider is subscribed to. |
campaignManagementEnabled - Boolean
|
Whether campaign management feature is enabled or not. |
eventBusArn - String
|
The ARN of the event bus that we should be sending events to. |
deviceIdSelector - DeviceIdSelector
|
The field in the 5G request to take the device ID from. The supported fields are 'servedGpsi' and 'subscriberIdentifier'. |
Example
{
"id": 4,
"name": "abc123",
"commonName": "abc123",
"homeNetworks": "abc123",
"emergencyNumbers": ["abc123"],
"lifecycleStage": "CREATING",
"allowedLifecycleTransitions": ["CREATING"],
"limits": [ApiLimitsConfig],
"churnFeatureEnabled": true,
"frequencyOfModelUpdate": 987,
"frequencyOfChurnCalculation": 123,
"lookbackPeriod": 987,
"parent": 4,
"subtenants": ["4"],
"vpcEndpointsIds": ["xyz789"],
"activeAlarms": ["ACCOUNT_NOT_FOUND"],
"campaignManagementEnabled": true,
"eventBusArn": "xyz789",
"deviceIdSelector": "SERVED_GPSI"
}
ProviderLifecycleStage
Description
Providers possible Lifecycle stages
Values
| Enum Value | Description |
|---|---|
|
|
Provider is in the process of being created but cannot be used for any live operations / traffic. |
|
|
Provider has reference data (plan, accounts devices) loaded, is connected to receive charging events and is ready for User Acceptance Testing. |
|
|
Provider is fully operational. |
|
|
Provider is suspended and no usage of the system is possible. Requests via any API will be rejected with an error code indicating the suspended state. |
|
|
Provider is fully terminated. No data is deleted from the system. |
|
|
All customer data, except for EDRs, is removed from the system with the exception of any data that must be maintained / archived for regulatory reasons. Customers may also ask for ‘proof’ of data destruction. |
Example
"CREATING"
Rate
Description
Rate configuration.
Fields
| Field Name | Description |
|---|---|
ratePerRounding - String!
|
Particular rate in rounded units to be applied. If rounding is 1MB (1024*1024) then provided rate is per 1MB. If rounding is 60 then provided rate is per minute. |
taxRate - Float!
|
A tax rate to be applied. It is a percentage and expressed as a fraction. For example, 0.15 stands for 15% tax rate. |
rateMinUnits - Int
|
Minimum number of units to use when premium numbers are specified. Numbers specified are a multiple of perUnitRounding defined in the rating group hierarchy for that rating group. If not specified, it will default to 0. |
initialCharge - String
|
The initial monetary charge/flag fall fee if premium numbers are specified. If not specified, it will default to 0. |
Example
{
"ratePerRounding": "xyz789",
"taxRate": 123.45,
"rateMinUnits": 123,
"initialCharge": "abc123"
}
RateBalance
Description
Rate configuration for monetary balance.
Fields
| Field Name | Description |
|---|---|
rate - Rate
|
Rate configuration. If not specified then monetary usage is denied (except roaming and long distance which are configured independently). |
roaming - [ExtendedRate!]
|
Roaming configuration. If not specified then roaming will be denied. |
longDistance - [ExtendedRate!]
|
Long distance configuration. If not specified then long distance will be denied. |
Example
{
"rate": Rate,
"roaming": [ExtendedRate],
"longDistance": [ExtendedRate]
}
RateBalanceInput
Description
Input type for rate based balances.
Fields
| Input Field | Description |
|---|---|
rate - RateInput
|
Rate configuration. If not specified then monetary usage is denied (except roaming and long distance which are configured independently). |
roaming - [ExtendedRateInput!]
|
Roaming configuration. If not specified then roaming will be denied. |
longDistance - [ExtendedRateInput!]
|
Long distance configuration. If not specified then long distance will be denied. |
Example
{
"rate": RateInput,
"roaming": [ExtendedRateInput],
"longDistance": [ExtendedRateInput]
}
RateInput
Description
Rate configuration.
Fields
| Input Field | Description |
|---|---|
ratePerRounding - String!
|
Particular rate in rounded units to be applied. If rounding is 1MB (1024*1024) then provided rate is per 1MB. If rounding is 60 then provided rate is per minute. |
taxRate - Float!
|
A tax rate to be applied. It is a percentage and expressed as a fraction. For example, 0.15 stands for 15% tax rate. |
rateMinUnits - Int
|
Minimum number of units to use when premium numbers are specified. Numbers specified are a multiple of perUnitRounding defined in the rating group hierarchy for that rating group. If not specified, it will default to 0. |
initialCharge - String
|
The initial monetary charge/flag fall fee if premium numbers are specified. If not specified, it will default to 0. |
Example
{
"ratePerRounding": "xyz789",
"taxRate": 123.45,
"rateMinUnits": 987,
"initialCharge": "xyz789"
}
RateLimitExceeded
Description
An error type to be thrown if a provider crossed the rate limit and request will be rejected
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
Service provider ID with problem. |
retryAfter - AWSDateTime!
|
Date when the rate limit should be restored and request should be retried |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"providerId": 4,
"retryAfter": AWSDateTime,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
RatingGroup
Description
Rating group.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - Int!
|
Rating Group ID. |
name - String!
|
Name of the rating group. |
perUnitRounding - Int
|
Unit rounding. |
minReservation - Float
|
Minimum total reservation that can be held for this rating group. If empty then there is no minimum. |
maxReservation - Float
|
Maximum total reservation that can be held for this rating group. If empty then there is no maximum. |
unitType - UnitType!
|
Unit type that is used for this rating group. |
quotaValidityTime - Int
|
Validity type which is returned in responses. |
enableDynamicQuotaAllocation - Boolean
|
Whether the plan enables dynamic quota allocation or not. If value is not present, then the default is false. |
isDefault - Boolean!
|
Default groups are determined by names, not by IDs, ID of default group can be changed. |
children - [RatingGroup]
|
List of nested rating groups. |
Example
{
"providerId": 4,
"id": 123,
"name": "abc123",
"perUnitRounding": 987,
"minReservation": 123.45,
"maxReservation": 123.45,
"unitType": "TIME",
"quotaValidityTime": 123,
"enableDynamicQuotaAllocation": true,
"isDefault": true,
"children": [RatingGroup]
}
RatingGroupHierarchyHasReferences
Description
An error type to be thrown if there is a rating group which is not provided in the input but used by some plan.
Fields
| Field Name | Description |
|---|---|
ratingGroup - [RatingGroup!]!
|
A list of rating groups that have references to plans. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"ratingGroup": [RatingGroup],
"errorCode": "xyz789",
"errorMessage": "abc123"
}
RatingGroupInput
Description
Rating group parameters.
Fields
| Input Field | Description |
|---|---|
id - Int!
|
Rating group ID. |
name - String!
|
Unique name for this Rating Group. Must be between 1 and 50 characters and consist of letters, digits or special characters. |
perUnitRounding - Int
|
Unit rounding. If not provided then unit rounding is used from parents RGs. |
minReservation - Float
|
Minimum total reservation that can be held for this rating group. If not provided then there is no minimum. |
maxReservation - Float
|
Maximum total reservation that can be held for this rating group. If not provided then there is no maximum. |
unitType - UnitType
|
Unit type that is used for this rating group. Service specific units used by default. |
quotaValidityTime - Int
|
Validity type which is returned in responses. |
enableDynamicQuotaAllocation - Boolean
|
Whether the plan enables dynamic quota allocation or not. If value is not present, then the default is false. |
children - [RatingGroupInput]
|
List of nested rating groups. |
Example
{
"id": 987,
"name": "xyz789",
"perUnitRounding": 987,
"minReservation": 987.65,
"maxReservation": 987.65,
"unitType": "TIME",
"quotaValidityTime": 123,
"enableDynamicQuotaAllocation": true,
"children": [RatingGroupInput]
}
RatingGroupResult
Description
Return type of RatingGroup including all possible errors.
Types
| Union Types |
|---|
Example
RatingGroup
RatingGroupValidationFailed
Description
An error type to be thrown if rating group hierarchy validation failed.
Fields
| Field Name | Description |
|---|---|
root - RatingGroup!
|
A list of default rating groups if default rating groups were not provided. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"root": RatingGroup,
"errorCode": "xyz789",
"errorMessage": "abc123"
}
RecurringPeriod
Description
Information about the plan recurring period
Fields
| Field Name | Description |
|---|---|
periodType - PeriodType!
|
Determines a period when counter value must be reset. |
numberOfPeriods - Int!
|
The number of period types that will be used to reset or expire the plan. |
recurring - Boolean!
|
Determines if the plan is recurring or expires after the period. |
Example
{"periodType": "HOUR", "numberOfPeriods": 123, "recurring": true}
RecurringPeriodInput
Description
Parameters for recurring period.
Fields
| Input Field | Description |
|---|---|
periodType - PeriodType!
|
Determines a period when the plan will be reset or expired. |
numberOfPeriods - Int!
|
The number of period types that will be used to reset or expire the plan. |
recurring - Boolean!
|
Determines if the plan is recurring or expires after the period. |
Example
{"periodType": "HOUR", "numberOfPeriods": 987, "recurring": false}
RefundPolicy
Description
The possible values of prorating for the accounts on cancellation of subscriptions.
Values
| Enum Value | Description |
|---|---|
|
|
No refund for for any remaining time in the cycle. |
|
|
The recurring offer charge is refunded in full. |
|
|
The recurring offer charge is refunded relative to the point in the bill cycle that the offer was canceled. |
Example
"NONE"
RemoveWhitelistIpResult
Description
Return type of IP whitelist removal API
InvalidField (InvalidIP)- The IP CIDR provided is not valid.IpNotFound (IpNotFound)- The IP CIDR provided is not found.
Types
| Union Types |
|---|
Example
IpRestrictionPayload
ResetUserPasswordInput
ResetUserPasswordPayload
ResetUserPasswordResult
Description
Return type of ResetUserPassword including all possible errors.
UserNotFound- Given user ID does not exist in the tenant, even if user ID exists in CognitoUserIncorrectStatus- Given user is not in a state where the password can be reset
Example
ResetUserPasswordPayload
RestoreJob
Description
Type for restore job.
Fields
| Field Name | Description |
|---|---|
id - ID!
|
ID for the restore job. |
providerId - ID!
|
Provider ID. |
status - RestoreJobStatus!
|
Status of the job. |
createdAt - AWSDateTime!
|
The creation time of the job. |
createdBy - AWSEmail!
|
The email of the person who triggered the restore job. |
modifiedAt - AWSDateTime!
|
Time of the last update of the record. Will be the same as the creation date when record is created. |
Example
{
"id": "4",
"providerId": 4,
"status": "CREATED",
"createdAt": AWSDateTime,
"createdBy": AWSEmail,
"modifiedAt": AWSDateTime
}
RestoreJobStatus
Description
Status of a restore job.
Values
| Enum Value | Description |
|---|---|
|
|
Status when the job is first created. |
|
|
Status to state that the job is in progress. |
|
|
Status after job is complete. |
|
|
Status after job is canceled. |
Example
"CREATED"
RoleGroup
Description
Cognito role groups
Values
| Enum Value | Description |
|---|---|
|
|
Role to allow user to query accounts/devices |
|
|
Role to allow user to manipulate accounts/devices |
|
|
Role to allow user to query/manipulate accounts/devices and query EDRs |
|
|
Role to allow user to query plan related data |
|
|
Role to allow user to query/manipulate plan related data |
|
|
Role to allow user to query/manipulate plan related data and to publish plans |
|
|
Role to allow user to administer users of his/her own tenant |
Example
"Account_Query"
Rule
Description
An item that has one to one relation to the plugins.
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
A unique identifier of a rule. |
name - String!
|
The name of the rule. |
pluginId - String!
|
The ID of the plugin the rule is used in. |
providedFields - [ProvidedField]
|
The fields for which it provides data. |
usedFields - [UsedField]
|
The fields it uses. |
planVersion - PlanVersion
|
A plan version which is using this field. |
Example
{
"providerId": 4,
"id": "4",
"name": "abc123",
"pluginId": "xyz789",
"providedFields": [ProvidedField],
"usedFields": [UsedField],
"planVersion": PlanVersion
}
RuleConnection
Description
The connection type for Rule.
Fields
| Field Name | Description |
|---|---|
edges - [RuleEdge!]!
|
List of nodes in the connection. |
pageInfo - PageInfo!
|
Information about pagination in the connection. |
Example
{
"edges": [RuleEdge],
"pageInfo": PageInfo
}
RuleEdge
RuleNotFound
Description
An error type to be thrown if a rule was not found.
Example
{
"providerId": "4",
"ruleId": "4",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
RuleSets
Description
A set of rules.
Example
{
"charging": [Rule],
"crediting": [Rule],
"recurring": [Rule]
}
RuleSetsInput
Description
Input type of RuleSets.
Example
{
"charging": [4],
"crediting": ["4"],
"recurring": [4]
}
SGSNTable
Description
Information about the SGSN table
Fields
| Field Name | Description |
|---|---|
rows - [SGSNTableItem]!
|
SGSN table rows |
Example
{"rows": [SGSNTableItem]}
SGSNTableInput
Description
Information about the SGSN table
Fields
| Input Field | Description |
|---|---|
rows - [SGSNTableItemInput]!
|
SGSN table rows |
Example
{"rows": [SGSNTableItemInput]}
SGSNTableItem
SGSNTableItemInput
SGSNTableResult
Description
Return type of getSGSNTable including all possible errors.
Types
| Union Types |
|---|
Example
SGSNTable
SaveUserPayload
Description
Return type of a User for mutations creating/updating
Fields
| Field Name | Description |
|---|---|
providerId - ID!
|
Service provider ID. This is retrieved from cognito group named Provider_{providerId} |
userId - ID!
|
Cognito User ID |
email - AWSEmail!
|
User email |
name - String!
|
The name of the user |
roleGroupMemberships - [RoleGroup!]!
|
The roles this user belong to |
profilePicture - ProfilePhoto
|
The user's profile picture. If profile picture exists, it will always contain a pre-signed URL to download profile picture. It will contain pre-signed URL to upload picture only for the updateUserProfile mutation |
phoneNumber - AWSPhone
|
The user's phone number |
jobTitle - String
|
The user's job title |
expiry - AWSDateTime
|
The time when the user should expire. Used for temporary access. |
alertInterval - Int
|
The alarm interval in minutes when an email should be send to the user that access expires. Only used when expiry is specified. Can be 0 or not specified when expiry is specified which means no email is send. |
Example
{
"providerId": 4,
"userId": "4",
"email": AWSEmail,
"name": "xyz789",
"roleGroupMemberships": ["Account_Query"],
"profilePicture": ProfilePhoto,
"phoneNumber": AWSPhone,
"jobTitle": "abc123",
"expiry": AWSDateTime,
"alertInterval": 123
}
SearchableQueryMap
Fields
| Input Field | Description |
|---|---|
search - String
|
Example
{"search": "xyz789"}
ServiceConstraint
Description
Possible restrictions for plan service usage.
Values
| Enum Value | Description |
|---|---|
|
|
A flag indicating on-net calls. On-net means that the A-number is in the home network and the B-number belongs to the same service provider. Only supported if the provider carrier code/homeNetworks is set. |
|
|
A flag indicating off-net calls. If a call is not on-net it is off-net. Only supported if the provider carrier code/homeNetworks is set. |
|
|
A flag indicating calls to or from friends and family. |
Example
"IS_ON_NET"
ServiceFormatError
Description
An error type to be thrown if a new version of a plan is created based on the old format while a version with the new format exists.
Example
{
"providerId": 4,
"planVersionId": "4",
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
Settings
Description
Settings for providers.
Example
{
"providerId": 4,
"json": AWSJSON,
"enableDynamicQuotaTestMode": false
}
SettingsResult
Description
Return type of Settings including all possible errors.
Types
| Union Types |
|---|
Example
Settings
String
Description
The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Example
"abc123"
SubscribeToPlanVersionInput
Description
Input type of SubscribeToPlanVersion.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
A unique identifier of an account. |
planVersionId - ID
|
A unique identifier of a plan version to subscribe. |
planId - ID
|
A unique identifier of a plan for the subscription to it's latest version. Either a planVersionId or a planId must be provided at the same time. |
from - AWSDateTime
|
The start time of the subscription. Set to now if not provided. |
to - AWSDateTime
|
The end time of the subscription. Set to a far time into the future if not provided. |
overrides - [KeyValueInput]
|
List of fields with values that override values from a plan. |
Example
{
"providerId": 4,
"accountId": 4,
"planVersionId": "4",
"planId": 4,
"from": AWSDateTime,
"to": AWSDateTime,
"overrides": [KeyValueInput]
}
SubscribeToPlanVersionPayload
Description
Return type of SubscribeToPlanVersion.
Fields
| Field Name | Description |
|---|---|
subscribedPlanVersion - SubscribedPlanVersion!
|
The subscribed plan version in question. |
account - Account!
|
The account in question. |
Example
{
"subscribedPlanVersion": SubscribedPlanVersion,
"account": Account
}
SubscribeToPlanVersionResult
Description
Return type of SubscribeToPlan including all possible errors.
SubscribeToPlanVersionValidationFailed (SubscriptionDateCannotExceedPlanPeriod)- should be returned when the plan is non recurring and the subscription exceeds the plan period length.SubscribeToPlanVersionValidationFailed (PurchaseFeeCannotBeCharged)- There is not enough balance to charge a purchase fee, plan subscription has been expired immediately.InternalServerError (ChargeEngineNotAvailable)- The charge engine is not available at this time.InvalidField (OnlyOnePlanToBeProvided)- You cannot provide both planId and planVersionId.InvalidField (PlanMustBeProvided)- Either planId or planVersionId must be provided.
Example
SubscribeToPlanVersionPayload
SubscribeToPlanVersionValidationFailed
SubscribedPlanVersion
Description
An instance of a plan version that belongs to an account.
Fields
| Field Name | Description |
|---|---|
planSubscriptionId - ID
|
The ID of the subscription. |
from - AWSDateTime
|
The start time of the subscription. |
to - AWSDateTime
|
The end time of the subscription. |
planVersion - PlanVersion!
|
The plan version in question. |
planId - ID
|
The plan in question. |
overrides - [KeyValue]
|
List of fields with values that override values from a plan. |
Example
{
"planSubscriptionId": "4",
"from": AWSDateTime,
"to": AWSDateTime,
"planVersion": PlanVersion,
"planId": 4,
"overrides": [KeyValue]
}
SubscriptionNotFound
Description
An error type to be thrown if a subscription for provided dates cannot be found. If 'to' was empty in input, it will be empty in error. If 'from' was empty in input, it will be 'now' in error.
Fields
| Field Name | Description |
|---|---|
planSubscriptionId - ID
|
The ID of the subscription. |
planVersionId - ID!
|
A unique identifier of a plan version of a subscription. |
from - AWSDateTime
|
The start time of the subscription. Set to now if not provided. |
to - AWSDateTime
|
The end time of the subscription. Set to a far time into the future if not provided. |
errorCode - String!
|
The error code in question. |
errorMessage - String
|
The error message in question. |
Example
{
"planSubscriptionId": 4,
"planVersionId": 4,
"from": AWSDateTime,
"to": AWSDateTime,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
SubscriptionPolicy
Description
The possible values of prorating for the postpaid accounts on subscription.
Values
| Enum Value | Description |
|---|---|
|
|
Recurring offers (charge or allowance) are applied in full, independent of when the offer is purchased related to the bill cycle date. |
|
|
Recurring offers (charge or allowance) are prorated based on when the offer is purchased relative to the bill cycle. |
Example
"NONE"
TemplateInstance
Description
A union to define all possible parameters for templates.
Types
| Union Types |
|---|
Example
InitialTemplateInstance
TenantAlarmType
Description
Type of tenant specific alarms that tenants can subscribe to.
Values
| Enum Value | Description |
|---|---|
|
|
When tenant subscribes to this, they will be notified whenever they try to charge an account that does not exist. |
|
|
When tenant subscribes to this, they will be notified whenever they try to charge a device that does not exist. |
|
|
When tenant subscribes to this, they will be notified whenever rating plan cannot be found when processing a charge request. |
|
|
When tenant subscribes to this, they will be notified whenever they try to update or terminate a session that does not exist. |
|
|
When tenant subscribes to this, they will be notified whenever they try to update or terminate a session that is closed. |
Example
"ACCOUNT_NOT_FOUND"
Termination
Fields
| Field Name | Description |
|---|---|
aNumberHomeCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
bNumberCurrentCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
Example
{
"aNumberHomeCountryExpr": "abc123",
"bNumberCurrentCountryExpr": "abc123"
}
TerminationInput
Description
Information about A and B parties for MT calls.
Fields
| Input Field | Description |
|---|---|
aNumberHomeCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
bNumberCurrentCountryExpr - String!
|
ISO 3166-1 alpha-2 country code. For example, US. The list can be found here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Negation can be used. For example, !US. Conjunction can be used. For example, (US,CA). |
Example
{
"aNumberHomeCountryExpr": "xyz789",
"bNumberCurrentCountryExpr": "xyz789"
}
TimePeriod
Description
Consists of times and days to make an overall period (e.g. Mon-Fri 09:00-18:00 as working hours period). It should have times specified or days specified or both.
Fields
| Field Name | Description |
|---|---|
times - [String!]
|
A list of time intervals in a format of HH:mm-HH:mm (10:32-15:43) or hh24:mm-hh24:mm (10:32am-3:43pm). |
days - [WeekDay!]
|
A list of week days. |
Example
{"times": ["xyz789"], "days": ["MONDAY"]}
TimePeriodInput
Description
Input type of TimePeriod. It should have times specified or days specified or both.
Fields
| Input Field | Description |
|---|---|
times - [String!]
|
A list of time intervals in a format of HH:mm-HH:mm (10:32-15:43) or hh24:mm-hh24:mm (10:32am-3:43pm). |
days - [WeekDay!]
|
A list of week days. |
Example
{"times": ["xyz789"], "days": ["MONDAY"]}
TimestampConfiguration
UnitAllowance
Description
All the parameters for each service in initial template.
Fields
| Field Name | Description |
|---|---|
balanceName - String!
|
Balance name that will be used for charging. Also the same name is used for setting provisioning overrides values. |
periodAllowance - Float
|
Units that will be added to a specified balance on a specified recurring period. If not specified it means that it is unlimited. |
rollover - Boolean!
|
An action to perform with balances from a previous period. Rollover if true or reset if false. |
notificationAllowanceThresholds - [Float]
|
Units thresholds to define when to send notifications whenever allowance goes below any of the defined thresholds. If not specified then no notifications are required. |
fairUsagePolicyCounter - FairUsagePolicyCounter
|
Specifies the fair usage policy counter to be created for unit balance. If empty then no policy is created. |
Example
{
"balanceName": "xyz789",
"periodAllowance": 123.45,
"rollover": false,
"notificationAllowanceThresholds": [123.45],
"fairUsagePolicyCounter": FairUsagePolicyCounter
}
UnitAllowanceInput
Description
Input type for unit allowance.
Fields
| Input Field | Description |
|---|---|
balanceName - String
|
Balance name that will be used for charging. Also the same name is used for setting provisioning overrides values. If not specified it means that it will be auto generated or reused from previous version. |
periodAllowance - Float
|
Units that will be added to this service on a specified recurring period. If not specified or zero it means that it is unlimited. |
rollover - Boolean
|
An action to perform with balances from a previous period. Rollover if true or reset if false. False by default. |
notificationAllowanceThresholds - [Float]
|
Units thresholds to define when to send notifications whenever allowance goes below any of the defined thresholds. If not specified then no notifications are required. |
fairUsagePolicyCounter - FairUsagePolicyCounterInput
|
Specifies the fair usage policy counter to be created for unit balance. If empty then no policy is created. |
Example
{
"balanceName": "xyz789",
"periodAllowance": 987.65,
"rollover": true,
"notificationAllowanceThresholds": [123.45],
"fairUsagePolicyCounter": FairUsagePolicyCounterInput
}
UnitType
Description
Possible types of units that will be granted.
Values
| Enum Value | Description |
|---|---|
|
|
Time type of units. Seconds for example. |
|
|
Volume type of units. Bytes for example. |
|
|
Any service specific types of units. SMS for example. |
|
|
Monetary type of units. |
Example
"TIME"
UpdateAccountBalanceTypeCounterInput
Description
Input parameters for updating Balance Type Counter settings for an account. Updates an AccountBalanceCounter record.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Provider ID. |
balanceTypeId - ID!
|
The balanceType ID for which to update a Counter in the Account. |
accountId - ID!
|
The Account ID where to define the Counter settings. |
counter - BalanceTypeCounterInput!
|
The information about the counter. |
Example
{
"providerId": "4",
"balanceTypeId": "4",
"accountId": 4,
"counter": BalanceTypeCounterInput
}
UpdateAccountCohortInput
Description
Defines the input for the UpdateAccountCohort mutation.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
id - ID!
|
The ID of the Account Cohort |
definition - AccountCohortInput
|
Defines the input for the Account Cohort properties. |
Example
{
"providerId": 4,
"id": "4",
"definition": AccountCohortInput
}
UpdateAccountCohortResult
Example
AccountCohort
UpdateAccountInput
Description
Input type of UpdateAccount.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
A unique identifier of an account. |
customData - AWSJSON
|
Any custom data required by the account. |
friendsAndFamily - [String]
|
List of friends and family. |
creditLimit - Float
|
The limit an account can be credited to. It should be negative/zero for prepaid accounts and positive for postpaid accounts. |
notificationCreditLimitThresholds - [Float]
|
Thresholds of the default monetary balance on the account. Whenever the account balance goes lower than any of the values in the set a notification is sent. |
postpaid - UpdateAccountPostpaidPropertiesInput
|
If account is a postpaid account, i.e. creditLimit is greater than zero, this holds the postpaid properties |
Example
{
"providerId": "4",
"accountId": 4,
"customData": AWSJSON,
"friendsAndFamily": ["abc123"],
"creditLimit": 123.45,
"notificationCreditLimitThresholds": [987.65],
"postpaid": UpdateAccountPostpaidPropertiesInput
}
UpdateAccountPayload
Description
Return type of UpdateAccount.
Fields
| Field Name | Description |
|---|---|
account - Account!
|
The updated account. |
Example
{"account": Account}
UpdateAccountPostpaidPropertiesInput
Description
An input type to hold the postpaid properties of accounts
Fields
| Input Field | Description |
|---|---|
timezone - String
|
The timezone of the user in format (+/-hh:mm). This is a property for postpaid accounts only |
billingDayOfMonth - Int
|
The day of month for resetting balance and units for account. Value is between 1 and 31 inclusive. This is a property for postpaid accounts only |
longFirstBillingCycle - Boolean
|
Whether the new billing cycle is a long one, e.g. if current date is the 1st and the account was updated to use the 16th. If this value is true, it means that the next bill will be for 45 days, while if false, bill will be for 15 days only. If not provided then used already existing value for this account. |
Example
{
"timezone": "abc123",
"billingDayOfMonth": 123,
"longFirstBillingCycle": true
}
UpdateAccountResult
Description
Return type of UpdateAccount including all possible errors.
InvalidField (InvalidFriendsAndFamilyList)- Friends and family list can consist of 20 numbers maximum.InvalidField (InvalidFriendsAndFamilyNumber)- Friends and family list consists of invalid number. The only allowed format is E.164.InvalidField (InvalidJsonCreditLimit)- Cannot set credit limit from json.creditLimit. Must use creditLimit directly.InvalidField (InvalidTimezone)- Timezone format is wrong. It should be between -12:00 and +14:00.InvalidField (InvalidDayOfMonth)- Billing day of month should be between 1 and 31 inclusive.
Example
UpdateAccountPayload
UpdateArchivingPolicyFailed
Description
An error type to be thrown if updating archive policy fails.
Example
{
"providerId": "4",
"archiveThreshold": 123,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
UpdateArchivingPolicyInput
UpdateArchivingPolicyPayload
Description
Return type of UpdateArchivingPolicy.
Example
{"providerId": 4, "oldArchiveThreshold": 987, "newArchiveThreshold": 123}
UpdateArchivingPolicyResult
Description
Return type of UpdateArchivingPolicy including all possible errors.
UpdateArchivingPolicyFailed (ErrorSavingArchivingPolicy)- we should propagate the error message coming from S3.
Example
UpdateArchivingPolicyPayload
UpdateBalanceInput
Description
Input type for updating a balance.
Fields
| Input Field | Description |
|---|---|
balanceTypeId - ID!
|
Balance type ID. |
balanceId - ID!
|
ID for the balance. |
providerId - ID!
|
Provider ID. |
accountId - ID!
|
Account ID. |
priority - Float
|
Priority of the balance. If there are multiple balances of the same type, the one with the highest priority will be used first. |
balanceValue - Float
|
Value of the balance. |
adjustment - AdjustmentType
|
Value of the adjustment to the current balance. Value is required if balance is provided. |
limit - Float
|
Limit for the balance. |
from - AWSDateTime
|
Start date of the balance. |
to - AWSDateTime
|
End date of the balance. |
Example
{
"balanceTypeId": "4",
"balanceId": "4",
"providerId": "4",
"accountId": "4",
"priority": 123.45,
"balanceValue": 987.65,
"adjustment": "CREDIT",
"limit": 123.45,
"from": AWSDateTime,
"to": AWSDateTime
}
UpdateBalanceResult
Description
Return type of UpdateBalance including all possible errors.
BalanceNotFound (BalanceNotFound)- The balance ID provided does not exist.AccountNotFound (AccountNotFound)- The specified account does not exist.BalanceTypeNotFound (BalanceTypeNotFound)- None of the balance type IDs provided does exist.
Example
BalancePayload
UpdateBalanceTypeCounterInput
Description
Input parameters for updating Balance Type Counter notifications.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Provider ID. |
balanceTypeId - ID!
|
The balanceType ID associated with the Balance Type Counter Creates or updates the counter for the correct Balance Type. |
counter - BalanceTypeCounterInput!
|
The information about the counter. |
Example
{
"providerId": "4",
"balanceTypeId": 4,
"counter": BalanceTypeCounterInput
}
UpdateBalanceTypeCounterPayload
Description
A representation of Balance Type Counter notifications.
Fields
| Field Name | Description |
|---|---|
balanceTypeId - ID!
|
The Balance Type associated with the Balance Type Counter. |
counter - BalanceTypeCounterPayload!
|
The counter information payload. |
Example
{"balanceTypeId": 4, "counter": BalanceTypeCounterPayload}
UpdateBalanceTypeInput
Description
Input type for updating a balance type.
Fields
| Input Field | Description |
|---|---|
balanceTypeId - ID!
|
ID for the balance type. |
providerId - ID!
|
Provider ID. |
name - String!
|
Name of the balance type. |
unitType - UnitType!
|
Unit type of the balance type. |
limit - Float
|
Limit of the balance type. If the balance is rate based, it is equivalent creditLimit. |
counters - [BalanceTypeCounterInput!]
|
List of counters IDs of the balance type. |
Example
{
"balanceTypeId": 4,
"providerId": "4",
"name": "abc123",
"unitType": "TIME",
"limit": 123.45,
"counters": [BalanceTypeCounterInput]
}
UpdateBalanceTypeResult
Description
Return type of UpdateBalanceType including all possible errors.
BalanceTypeHasReferences (BalanceTypeHasReferences)- The balance type is used in an active plan and the unit type and name can't be updated.BalanceTypeNotFound (BalanceTypeNotFound)- The balance type ID provided does not exist.BalanceTypeCounterNotFound (BalanceTypeCounterNotFound)- One of the counter IDs does not exist.InvalidField (InvalidLimit)- The limit has to be an integer value if it is not a rate based balance type. Only rate based balance types can have decimal limits.InvalidField (InvalidCounterName)- The provided counter name must be between 1 and 50 characters and consist of letters, digits or special characters.InvalidField (InvalidCounterNames)- Counter names must be unique across the balance type.InvalidField (InvalidCounterStates)- Thresholds and names of states must be unique across the counter and one of the states must not have a threshold.
Example
BalanceTypePayload
UpdateCampaignInput
Description
Input for updating a campaign.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
campaignId - ID!
|
The unique identifier for the campaign. |
name - String
|
The name of the campaign. Remains not changed if not provided. |
description - String
|
A custom description of the campaign. Remains not changed if not provided. |
campaignSchedule - CampaignScheduleInput
|
Specifies the schedule settings for a campaign. Remains not changed if not provided. |
campaignEmailMessage - CampaignEmailMessageInput
|
Specifies the content for an email message that's sent to recipients of a campaign. Remains not changed if not provided. |
offerIds - [ID!]
|
Array of Offers. Remains not changed if not provided. |
cohortId - ID
|
Cohort ID. Remains not changed if not provided. |
Example
{
"providerId": "4",
"campaignId": 4,
"name": "xyz789",
"description": "xyz789",
"campaignSchedule": CampaignScheduleInput,
"campaignEmailMessage": CampaignEmailMessageInput,
"offerIds": ["4"],
"cohortId": "4"
}
UpdateCampaignPayload
Description
Return type of updateCampaign.
Fields
| Field Name | Description |
|---|---|
campaign - Campaign!
|
The updated campaign. |
Example
{"campaign": Campaign}
UpdateCampaignResult
Description
Result of the UpdateCampaign mutation.
Example
UpdateCampaignPayload
UpdateDebitInput
Description
Input type of a Update Debit request.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
A unique identifier of an account. |
reservationId - ID!
|
The id of the debit reservation. |
debitStatus - DebitStatusInput!
|
The expected outcome of the debit operation. |
Example
{"providerId": 4, "accountId": 4, "reservationId": 4, "debitStatus": "CONFIRM"}
UpdateDebitPayload
Description
Return type of a Update Debit.
Fields
| Field Name | Description |
|---|---|
account - Account!
|
The account with increased balance. |
debitStatus - DebitStatus!
|
The status of the debit operation. Can not be RESERVED. |
Example
{"account": Account, "debitStatus": "RESERVED"}
UpdateDebitResult
Description
Return type of UpdateDebit including all possible errors.
DebitReservationNotFound (DebitReservationNotFound)- Given reservation ID does not exist or already expired.AccountNotFound- Given account ID does not exist.InvalidProviderLifecycleStage (InvalidProviderLifecycleStage)- SUSPENDED, TERMINATED or DELETED tenants are not allowed to perform requests.RateLimitExceeded (RateLimitExceeded)- The rate limit is crossed and request is rejected.
Example
UpdateDebitPayload
UpdateDeviceInput
Description
Input type of UpdateDevice.
Example
{
"providerId": "4",
"accountId": 4,
"deviceId": "4",
"customData": AWSJSON
}
UpdateDevicePayload
Description
Return type of UpdateDevice.
Fields
| Field Name | Description |
|---|---|
device - Device!
|
The updated device. |
Example
{"device": Device}
UpdateDeviceResult
Description
Return type of UpdateDevice including all possible errors.
Example
UpdateDevicePayload
UpdateFieldMappingInput
Description
Input type of UpdateFieldMapping.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
path - String!
|
The path to the field you want to manipulate. For example, "transformedRequest.sMSChargingInformation.numberofMessagesSent". It should be an existing path. |
expr - String!
|
SpEL expression to generate the value(s). It must return one value, but also it can use the same expressions as "path" with []. For example, "originalRequest.multipleUnitUsage[].usedUnitContainer[].serviceSpecificUnits * 10". It is also possible to use "originalField" as a reference to original value if field exists. For example, "originalField + 10". |
Example
{
"providerId": "4",
"path": "xyz789",
"expr": "abc123"
}
UpdateFieldMappingPayload
Description
Return type of UpdateFieldMapping.
Fields
| Field Name | Description |
|---|---|
fieldMapping - FieldMapping!
|
Updated field mapping. |
Example
{"fieldMapping": FieldMapping}
UpdateFieldMappingResult
Description
Return type of UpdateFieldMapping including all possible errors.
InvalidField (InvalidFieldMappingExpression)- The provided field mapping SpEL expression cannot be compiled.
Example
UpdateFieldMappingPayload
UpdateMyProviderConfigInput
Description
Input type for updating a tenant config.
Fields
| Input Field | Description |
|---|---|
name - String
|
The name of the tenant. Stays the same if not provided. |
commonName - String
|
The common name that will be used in the SSL certificates of the tenant. Stays the same if not provided. |
homeNetworks - String
|
The home networks for the tenant. Required if onNet calls should be supported. Stays the same if not provided. |
emergencyNumbers - [String]
|
List of emergency numbers. Stays the same if not provided. |
carrierCode - String
|
The carrier code. Stays the same if not provided. |
eventBusArn - String
|
The ARN of the event bus that we should be sending events to. |
activeAlarms - [TenantAlarmType]
|
The tenant specific alarms the provider is subscribed to. |
Example
{
"name": "abc123",
"commonName": "xyz789",
"homeNetworks": "xyz789",
"emergencyNumbers": ["abc123"],
"carrierCode": "abc123",
"eventBusArn": "xyz789",
"activeAlarms": ["ACCOUNT_NOT_FOUND"]
}
UpdateMyProviderConfigResult
Description
Return type of UpdateMyProviderConfig including all possible errors.
InvalidField (WrongNameLength)- name length must be between 2 and 50 characters.InvalidProviderLifecycleStage- Provider user can't call API when provider lifecycle stage is CREATING, SUSPENDED, TERMINATED or DELETED.InvalidField (CommonNameExists)- The common name exists for a non-deleted provider
Example
ProviderConfig
UpdateOfferInput
Description
Input type of UpdateOffer.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
offerId - ID!
|
A unique identifier of an offer. |
name - String
|
The name of the offer. Remains not changed if not provided. |
offerParameters - AWSJSON
|
The parameters that can be substituted into a message to customers. Remains not changed if not provided. |
acceptanceLink - AWSURL
|
Acceptance link for subscribers. The offer link takes the user to a company - operated page that makes the plan change without user input. It then redirects the browser to a telco - provided URL. Remains not changed if not provided. |
Example
{
"providerId": "4",
"offerId": 4,
"name": "abc123",
"offerParameters": AWSJSON,
"acceptanceLink": AWSURL
}
UpdateOfferPayload
Description
Return type of UpdateOffer.
Fields
| Field Name | Description |
|---|---|
offer - Offer!
|
The updated offer. |
Example
{"offer": Offer}
UpdateOfferResult
Description
Return type of UpdateOffer including all possible errors.
Example
UpdateOfferPayload
UpdatePlanInput
UpdatePlanPayload
Description
Return type of UpdatePlan.
Fields
| Field Name | Description |
|---|---|
plan - Plan!
|
Updated plan. |
Example
{"plan": Plan}
UpdatePlanResult
Description
Return type of UpdatePlan including all possible errors.
Example
UpdatePlanPayload
UpdatePlanServiceInput
Description
Input type of UpdatePlanService.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
planServiceId - ID!
|
A unique identifier of a plan service. |
name - String
|
The name of the plan service. |
ruleSets - RuleSetsInput
|
The set of rules that the service has available. |
providedFields - [ProvidedFieldInput]
|
The provided fields which override values for the plan service. |
balanceName - String
|
Balance name that will be used for charging. Also the same name is used for setting provisioning overrides values. Replaced by balanceTypeIds and managedBalanceTypeId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
balanceTypeIds - [ID!]
|
List of unique balance type IDs the plan service uses for charging if a balance of that type exists on the account. Only a single balance type ID is managed by the service. Other balance type IDs could be, for example, manually added to the account and used if present. Order of the IDs specifies in what order the balances are applied on charging. This can not be specified at the same time as balanceName. Will becomes mandatory after balanceName is removed. |
managedBalanceTypeId - ID
|
The balance type ID that the plan service manages. Managing means that for this balance type ID, the service creates balances on subscription and renewal and handles rollover if specified. BalanceTypeIds must be provided if this is set and the referred balance type ID must be provided in balanceTypeIds. |
priority - Float
|
Plan service priority that determines the execution order for charging and rating. |
Example
{
"providerId": "4",
"planServiceId": 4,
"name": "xyz789",
"ruleSets": RuleSetsInput,
"providedFields": [ProvidedFieldInput],
"balanceName": "xyz789",
"balanceTypeIds": ["4"],
"managedBalanceTypeId": 4,
"priority": 123.45
}
UpdatePlanServicePayload
Description
Return type of UpdatePlanService.
Fields
| Field Name | Description |
|---|---|
planService - PlanService!
|
The updated plan service. |
Example
{"planService": PlanService}
UpdatePlanServiceResult
Description
Return type of UpdatePlanService including all possible errors.
BalanceTypeNotFound (BalanceTypeNotFound)- One of the provided balance type IDs does not exist.ServiceFormatError (ServiceFormatError)- A new version of a plan is created based on the old format while a version with the new format exists. As soon as a plan uses the new balance format, all versions of the plan must use the new format.InvalidField (InvalidBalanceInput)-balanceNameandbalanceTypeIdsandmanagedBalanceTypeIdcan't be provided together. EitherbalanceNameorbalanceTypeIdsandmanagedBalanceTypeIdmust be provided.InvalidField (InvalidBalanceTypeIds)- Balance Type Ids inbalanceTypeIdsmust be unique.InvalidField (InvalidManagedBalanceTypeId)-balanceTypeIdsdoes not include 'managedBalanceTypeId'.
Example
UpdatePlanServicePayload
UpdatePlanSubscriptionInput
Description
Input type of UpdatePlanSubscription.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
A unique identifier of an account. |
planSubscriptionId - ID
|
A unique identifier of a plan subscription to to use. If provided, existing and new will be ignored and only planId considered. Will become mandatory after existing and new have been deprecated. |
planId - ID
|
A unique identifier of a plan for the subscription to it's latest version. Either a planId, planSubscriptionId, or planVersionId must be provided at the same time. If a planId is provided, the subscription will be updated to the newest version of the plan. |
existing - UpdatePlanVersionSubscriptionParametersInput
|
Existing parameters of the subscription. Replaced by planSubscriptionId and planId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
new - UpdatePlanVersionSubscriptionParametersInput
|
New parameters for the subscription. Replaced by planSubscriptionId and planId. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
overrides - [KeyValueInput]
|
List of fields with values that override values from a plan. |
from - AWSDateTime
|
The start time of the subscription. Set to now if not provided. |
to - AWSDateTime
|
The end time of the subscription. Set to a far time into the future if not provided. |
Example
{
"providerId": 4,
"accountId": "4",
"planSubscriptionId": 4,
"planId": "4",
"existing": UpdatePlanVersionSubscriptionParametersInput,
"new": UpdatePlanVersionSubscriptionParametersInput,
"overrides": [KeyValueInput],
"from": AWSDateTime,
"to": AWSDateTime
}
UpdatePlanVersionFromInitialTemplateInput
Description
Input type of UpdatePlanVersionFromInitialTemplate.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
planVersionId - ID!
|
An existing plan version ID to be updated. |
version - String
|
The name of the version to be updated. Remains not changed if not provided. |
fee - Float
|
A fee that will be charged per specified recurring period. Recurring fee is charged first time after the first period. If you need to charge some fee on subscription you need to use purchaseFee. Remains not changed if not provided. |
firstUsageFee - Float
|
A fee that will be charged just once on first usage of the plan. Remains not changed if not provided. |
purchaseFee - Float
|
A fee that will be charged just once right after the subscription. Remains not changed if not provided. |
period - RecurringPeriodInput
|
A period when specified fee will be charged. Remains not changed if not provided. |
services - [InitialTemplateServiceInput!]
|
List of plan services. Remains not changed if not provided. A plan service can only specify a monetary or unit rate but not both, they are exclusive. |
notificationPeriodsBeforeExpiration - [Int]
|
A set of periods in seconds when to send multiple notifications before the plan expires. Remains unchanged if not provided. |
notificationCreditLimitThresholds - [Float]
|
Thresholds of the credit limit on the account. Whenever the account goes lower than any of the values in the set a notification is sent. Remains unchanged if not provided. Removed and should be handled by using updateBalanceTypeCounter to add the counter to the default monetary balance on the account or createAccount/updateAccount with setting notificationCreditLimitThresholds. Deprecated date is 2023-09-30. Expiration date is 2024-02-01. |
renewalGracePeriod - [DurationInput]
|
Put a plan on hold for a limited grace period while waiting for a successful renewal. It is a sum of provided duration inputs. |
json - AWSJSON
|
Custom data in JSON format to be able to save and retrieve some configurations. Remains not changed if not provided. |
priority - Float
|
Plan priority that determines the execution order for charging and rating. Remains not changed if not provided. |
proratingOptions - ProratingOptionsInput
|
The prorating options for the plan |
Example
{
"providerId": "4",
"planVersionId": "4",
"version": "xyz789",
"fee": 123.45,
"firstUsageFee": 987.65,
"purchaseFee": 987.65,
"period": RecurringPeriodInput,
"services": [InitialTemplateServiceInput],
"notificationPeriodsBeforeExpiration": [987],
"notificationCreditLimitThresholds": [123.45],
"renewalGracePeriod": [DurationInput],
"json": AWSJSON,
"priority": 123.45,
"proratingOptions": ProratingOptionsInput
}
UpdatePlanVersionFromInitialTemplateResult
Description
Return type of UpdatePlanVersionFromInitialTemplate including all possible errors.
InvalidField (InvalidExtendedRate)- In the roaming or long distance one of the inputs (origination or termination) must be provided.InvalidField (InvalidRatingGroup)- There is no provided rating group ID in the hierarchy or provided rating group ID is the Root.InvalidField (SubscriptionPolicy)- If "alignBillingToDoM" is set to false and "subscriptionPolicy" was anything other than NONE or emptyInvalidField (RefundPolicy)- If "alignBillingToDoM" is set to false and "refundPolicy" was anything other than NONE or emptyInvalidField (ProratingOptionsSetForNonMonthlyPlan)- If "alignBillingToDoM" is set to true for a non monthly planCreatePlanValidationFailed (FeeIsNotRequired)- Fee is provided for a non recurring plan. Recurring plan must have a period specified and this period must be marked as recurring.ServiceFormatError (ServiceFormatError)- A new version of a plan is created based on the old format while a version with the new format exists. As soon as a plan uses the new balance format, all versions of the plan must use the new format.
Example
PlanVersionPayload
UpdatePlanVersionSubscriptionParametersInput
Description
Input type of UpdatePlanSubscription.
Fields
| Input Field | Description |
|---|---|
planSubscriptionId - ID
|
A unique identifier of a plan subscription to assign. |
planVersionId - ID!
|
A unique identifier of a plan version to assign. |
from - AWSDateTime
|
The start time of the subscription. Set to now if not provided. |
to - AWSDateTime
|
The end time of the subscription. Set to a far time into the future if not provided. |
Example
{
"planSubscriptionId": "4",
"planVersionId": 4,
"from": AWSDateTime,
"to": AWSDateTime
}
UpdatePlanVersionSubscriptionResult
Description
Return type of UpdatePlanSubscription including all possible errors.
Example
SubscribeToPlanVersionPayload
UpdateRatingGroupHierarchyInput
Description
Input type of UpdateRatingGroupHierarchy.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
A unique identifier of a service provider. |
root - RatingGroupInput!
|
Root rating group where the whole hierarchy starts. |
Example
{
"providerId": "4",
"root": RatingGroupInput
}
UpdateRatingGroupHierarchyPayload
Description
Return type of UpdateRatingGroupHierarchy.
Fields
| Field Name | Description |
|---|---|
root - RatingGroup!
|
Root rating group where the whole hierarchy starts. |
Example
{"root": RatingGroup}
UpdateRatingGroupHierarchyResult
Description
Return type of UpdateRatingGroupHierarchy including all possible errors.
RatingGroupHierarchyHasReferences (RatingGroupHierarchyHasReferences)- A node in the hierarchy can not be removed or changed if there are any active Plans referring to it.RatingGroupValidationFailed (DefaultRatingGroupIsNotProvided)- Mandatory default rating group(s) were not provided with a new hierarchy.RatingGroupValidationFailed (RatingGroupIsDuplicated)- Each rating group ID must be unique.RatingGroupValidationFailed (UnitRoundingInvalidLevel)- Unit rounding can be set only on the second level of hierarchy (the next after Root).RatingGroupValidationFailed (MissingMinReservationForDynamicQuota)- The minReservations should be defined on the same or upper level of the rating group hierarchy when Dynamic Quota Allocation is enabled.RatingGroupValidationFailed (MissingQuotaValidityTimeForDynamicQuota)- The quotaValidityTime should be defined on the same or upper level of the rating group hierarchy when Dynamic Quota Allocation is enabled.InvalidField (InvalidReservations)- The max reservation must be greater than the min reservation.InvalidField (InvalidPositiveNumber)- The provided number can be only a positive number.
Example
UpdateRatingGroupHierarchyPayload
UpdateSGSNTableInput
Description
Input type of UpdateSGSNTable.
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Service provider ID. |
sgsnTable - SGSNTableInput!
|
A unique identifier of a service provider. |
Example
{
"providerId": "4",
"sgsnTable": SGSNTableInput
}
UpdateSGSNTablePayload
Description
Return type of UpdateSGSNTable.
Fields
| Field Name | Description |
|---|---|
sgsnTable - SGSNTable!
|
Updated table. |
Example
{"sgsnTable": SGSNTable}
UpdateSGSNTableResult
Description
Return type of UpdateSGSNTableResult including all possible errors.
InvalidField (InvalidISO3166CountryCode)- The provided string must be a country code and must be in ISO 3166-1 alpha-2 format. Please, use only officially assigned code elements.InvalidField (InvalidIPCIDR)- The IP CIDR provided is not valid.
Example
UpdateSGSNTablePayload
UpdateSettingsInput
Description
Input type of UpdateSettings.
Example
{
"providerId": 4,
"json": AWSJSON,
"enableDynamicQuotaTestMode": true
}
UpdateSettingsPayload
Description
Return type of UpdateSettings.
Fields
| Field Name | Description |
|---|---|
settings - Settings!
|
The updated settings. |
Example
{"settings": Settings}
UpdateSettingsResult
Description
Return type of UpdateSettings including all possible errors.
Example
UpdateSettingsPayload
UpdateUserInput
Description
Input type of UpdateUser
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Service provider ID |
userId - ID!
|
Cognito User ID |
email - AWSEmail!
|
|
name - String!
|
The name of the user. Should be between 2 and 75 characters |
roleGroupMemberships - [RoleGroup!]!
|
The roles this user belong to |
phoneNumber - AWSPhone
|
The user's phone number |
jobTitle - String
|
The user's job title. If present, it should be between 2 and 50 characters |
expiry - AWSDateTime
|
The time when the user should expire. Used for temporary access. |
alertInterval - Int
|
The alarm interval in minutes when an email should be send to the user that access expires. Only used when expiry is specified. Can be 0 or not specified when expiry is specified which means no email is send. |
Example
{
"providerId": 4,
"userId": "4",
"email": AWSEmail,
"name": "xyz789",
"roleGroupMemberships": ["Account_Query"],
"phoneNumber": AWSPhone,
"jobTitle": "abc123",
"expiry": AWSDateTime,
"alertInterval": 123
}
UpdateUserProfileInput
Description
Input type of UpdateUserProfile
Example
{
"name": "abc123",
"phoneNumber": AWSPhone,
"jobTitle": "abc123"
}
UpdateUserProfileResult
Description
Return type of UpdateUser including all possible errors
InvalidField (name)- Name should be at least two characters long and a maximum of seventy fiveInvalidField (jobTitle)- Job title should be at least two characters long and a maximum of fifty
Example
SaveUserPayload
UpdateUserResult
Description
Return type of UpdateUser including all possible errors.
UserNotFound- Given user ID does not exist in the tenant, even if user ID exists in CognitoInvalidField (name)- Name should be at least two characters long and a maximum of seventy fiveInvalidField (jobTitle)- Job title should be at least two characters long and a maximum of fiftyUserIsReadOnly(UsersCanNotUpdateThemselves)- Updating own record should be done via update profileInvalidField (expiry)- Expiry needs to be in the future and needs to be a valid datetime stringInvalidField (alertInterval)- The alert interval can't be negative
Example
SaveUserPayload
UploadMetadata
Description
An instance of a metadata that belongs to an account.
Fields
| Field Name | Description |
|---|---|
accountId - ID!
|
The account ID to associate metadata with |
contactInformation - AWSEmail!
|
Contact information for the account. |
marketingOptIn - Boolean
|
Whether the account should be subscribed to marketing options. |
customAttributes - [KeyValue]
|
Custom attributes in the metadata. Can be any key value pair and later used for cohorts. |
Example
{
"accountId": "4",
"contactInformation": AWSEmail,
"marketingOptIn": false,
"customAttributes": [KeyValue]
}
UploadMetadataInput
Description
Input parameters for uploading metadata for an account
Fields
| Input Field | Description |
|---|---|
providerId - ID!
|
Provider ID. |
accountId - ID!
|
The account ID to associate metadata with |
contactInformation - AWSEmail!
|
Contact information for the account. |
marketingOptIn - Boolean
|
Whether the account should be subscribed to marketing options. |
customAttributes - [KeyValueInput]
|
Custom attributes in the metadata. Can be any key value pair and later used for cohorts. |
Example
{
"providerId": "4",
"accountId": 4,
"contactInformation": AWSEmail,
"marketingOptIn": false,
"customAttributes": [KeyValueInput]
}
UploadMetadataPayload
Description
Return type of UploadMetadata
Fields
| Field Name | Description |
|---|---|
accountId - ID!
|
The account ID to associate metadata with |
metadata - UploadMetadata
|
Metadata associated with the account |
Example
{
"accountId": "4",
"metadata": UploadMetadata
}
UploadMetadataResult
Types
| Union Types |
|---|
Example
UploadMetadataPayload
UsedField
Description
A field that is provided by some entity and already in use.
Fields
| Field Name | Description |
|---|---|
name - String!
|
The name of the field |
dataType - FieldDataType!
|
The type of the field. |
providedBy - FieldProvider
|
The entity which provides it. |
Example
{
"name": "abc123",
"dataType": "STRING",
"providedBy": Rule
}
UserAlreadyExists
Description
An error type to be thrown if a user with the same email exists in the user pool. Provider ID and user ID are not returned to not expose them in case user exists for a different provider
Example
{
"email": AWSEmail,
"errorCode": "abc123",
"errorMessage": "xyz789"
}
UserIncorrectStatus
Description
An error type to be thrown if user was not verified yet. This is returned whether the user does not exist, or if the provider does not exist.
Example
{
"providerId": 4,
"userId": 4,
"state": "abc123",
"errorCode": "xyz789",
"errorMessage": "abc123"
}
UserIsReadOnly
Description
An error type to be thrown if a user tries to update his/her own user record using the admin API instead of the update user profile API, or if they try to delete their own user record
Example
{
"errorCode": "abc123",
"errorMessage": "xyz789"
}
UserNotFound
Description
An error type to be thrown if user was not found for given provider. This is returned whether the user does not exist, or if the provider does not exist.
Example
{
"providerId": "4",
"userId": 4,
"errorCode": "abc123",
"errorMessage": "xyz789"
}
WeekDay
Description
The possible values for week days.
Values
| Enum Value | Description |
|---|---|
|
|
Monday. |
|
|
Tuesday. |
|
|
Wednesday. |
|
|
Thursday. |
|
|
Friday. |
|
|
Saturday. |
|
|
Sunday. |
Example
"MONDAY"