Totogi Charging as a Service API
Welcome to the Totogi Charging as a Service API. This GraphQL API is useful for querying balances and EDRs, provisioning subscribers and devices, subscribing to plans and managing configuration.
API Endpoints
https://gql.produseast1.api.totogi.com/graphql
Version
generated at 2023-11-29T09:25:33Z
Queries
getAccount
Description
Returns an Account for a provider by an account ID.
Authorized Roles: Account_Query
, Account_Admin
, Data_Admin
Response
Returns an AccountResult
Example
Query
query getAccount(
$providerId: ID!,
$accountId: ID!
) {
getAccount(
providerId: $providerId,
accountId: $accountId
) {
... on Account {
...AccountFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"providerId": 4, "accountId": 4}
Response
{"data": {"getAccount": Account}}
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}}
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
}
}
getCurrentUser
Description
Gets info for the currently logged in User. When used in an API context, this will return the API user.
Authorized Roles: All
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": "abc123",
"softwareMfaEnabled": true,
"expiry": AWSDateTime,
"alertInterval": 123
}
}
}
getDeployedFieldMappings
Description
Gets deployed field mappings for a provider sorted by when they will be applied.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
, Network_Operator
, Network_Admin
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": 987,
"after": "xyz789"
}
Response
{
"data": {
"getDeployedFieldMappings": {
"edges": [DeployedFieldMappingEdge],
"pageInfo": PageInfo
}
}
}
getDevice
Description
Returns a Device for a provider by a device ID.
Authorized Roles: Account_Query
, Account_Admin
, Data_Admin
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.
Authorized Roles: Data_Admin
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 or a maximum of 25. |
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": 987,
"after": "xyz789",
"filterBy": EventDataRecordFilter
}
Response
{
"data": {
"getEventDataRecordsByAccount": EventDataRecordAccountConnection
}
}
getEventDataRecordsByDevice
Description
Gets a list of event data records for a Device with pagination.
Authorized Roles: Data_Admin
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 or a maximum of 25. |
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": 123,
"after": "xyz789",
"filterBy": EventDataRecordFilter
}
Response
{
"data": {
"getEventDataRecordsByDevice": EventDataRecordDeviceConnection
}
}
getFieldMappings
Description
Gets NOT deployed field mappings for a provider.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
, Network_Operator
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": 123,
"after": "xyz789"
}
Response
{
"data": {
"getFieldMappings": {
"edges": [FieldMappingEdge],
"pageInfo": PageInfo
}
}
}
getMyExportJobs
Description
Gets export jobs of the current tenant.
Authorized Roles: Tenant_Admin
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 tenant configuration of the logged in User.
Authorized Roles: All
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
Description
Gets restore jobs of the current tenant.
Authorized Roles: Tenant_Admin
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.
Authorized Roles: Account_Admin
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": 987,
"after": "xyz789"
}
Response
{"data": {"getOffers": OfferConnection}}
getPlan
Description
Gets a Plan for a provider by a plan ID.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
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.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
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": 123,
"after": "abc123"
}
Response
{
"data": {
"getPlanServices": {
"edges": [PlanServiceEdge],
"pageInfo": PageInfo
}
}
}
getPlanVersion
Description
Gets a Plan Version for a provider by a plan version ID.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
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.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
Response
Returns a PlanConnection
Arguments
Name | Description |
---|---|
providerId - ID!
|
Service provider ID. |
first - Int!
|
Returns the first n elements from the list or a maximum of 25. |
after - String
|
Returns the elements in the list that come after the specified cursor. |
orderBy - PlanOrder
|
Ordering options for plans returned from the connection. |
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": 987,
"after": "xyz789",
"orderBy": PlanOrder
}
Response
{
"data": {
"getPlans": {
"edges": [PlanEdge],
"pageInfo": PageInfo
}
}
}
getRatingGroupHierarchy
Description
Gets Rating Group hierarchy for a provider.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
, Network_Admin
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
Gets a list of all parent accounts for a provided device ID.
Authorized Roles:Account_Query
, Account_Admin
,Data_Admin
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.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
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": 987,
"after": "xyz789"
}
Response
{
"data": {
"getRules": {
"edges": [RuleEdge],
"pageInfo": PageInfo
}
}
}
getSGSNTable
Description
Gets the SGSN table for a provider.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
, Network_Operator
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.
Authorized Roles: Plan_Query
, Plan_Designer
, Plan_Publisher
, Plan_Admin
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 a given provider ID and user ID, or returns a UserNotFound
error.
Authorized Roles: Tenant_Admin
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.
Authorized Roles: Tenant_Admin
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": 123,
"after": "abc123"
}
Response
{"data": {"listUsers": ListUsersConnection}}
Mutations
archivePlanVersion
Description
Archives a Plan Version if it is suspended with no subscribed accounts.
Authorized Roles: Plan_Designer
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
andfrom
are not specified, it cancels the first matching Plan. - If it is an indefinite Plan, then
to
andfrom
should be specified to get a match.
Authorized Roles: Account_Admin
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 InternalServerError {
...InternalServerErrorFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
}
}
Variables
{"input": CancelPlanSubscriptionInput}
Response
{
"data": {
"cancelPlanSubscription": CancelPlanVersionSubscriptionPayload
}
}
copyPlan
Description
Creates a new Plan out of an existing one.
Authorized Roles: Plan_Designer
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.
Authorized Roles: Plan_Designer
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.
Authorized Roles: Account_Admin
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}}
createDevice
Description
Creates a Device in an Account.
Authorized Roles: Account_Admin
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
Creates a Field Mapping in draft. Draft field mappings need to be deployed using deployFieldMappings
to become effective.
Authorized Roles: Network_Operator
, Plan_Publisher
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 an Offer.
Authorized Roles: Account_Admin
Response
Returns a CreateOfferResult!
Arguments
Name | Description |
---|---|
input - CreateOfferInput!
|
Parameters for CreateOffer. |
Example
Query
mutation createOffer($input: CreateOfferInput!) {
createOffer(input: $input) {
... on CreateOfferPayload {
...CreateOfferPayloadFragment
}
... on OfferAlreadyExists {
...OfferAlreadyExistsFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreateOfferInput}
Response
{"data": {"createOffer": CreateOfferPayload}}
createPlan
Description
Creates a Plan for a provider.
Authorized Roles: Plan_Designer
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.
Authorized Roles: Plan_Designer
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 RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreatePlanFromInitialTemplateInput}
Response
{
"data": {
"createPlanFromInitialTemplate": CreatePlanPayload
}
}
createPlanService
Description
Creates a Plan Service in a Plan.
Authorized Roles: Plan_Designer
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 RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreatePlanServiceInput}
Response
{"data": {"createPlanService": CreatePlanServicePayload}}
createPlanVersionFromInitialTemplate
Description
Creates a new Plan Version of a Plan that was originally created by using createPlanFromInitialTemplate
.
Authorized Roles: Plan_Designer
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 RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": CreatePlanVersionFromInitialTemplateInput}
Response
{
"data": {
"createPlanVersionFromInitialTemplate": PlanVersionPayload
}
}
createUser
Description
Creates a tenant User.
Authorized Roles: Tenant_Admin
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 of the given Account.
Authorized Roles: Account_Admin
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 of the given Account.
Authorized Roles: Account_Admin
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.
Authorized Roles: Account_Admin
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}}
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
}
}
deleteDevice
Description
Deletes a Device from an Account.
Authorized Roles: Account_Admin
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
Deletes a Field Mapping in draft. Draft field mappings need to be deployed using deployFieldMappings
to become effective.
Authorized Roles: Network_Operator
, Plan_Publisher
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 Offer.
Authorized Roles: Account_Admin
Response
Returns a DeleteOfferResult!
Arguments
Name | Description |
---|---|
input - DeleteOfferInput!
|
Parameters for DeleteOffer. |
Example
Query
mutation deleteOffer($input: DeleteOfferInput!) {
deleteOffer(input: $input) {
... on DeleteOfferPayload {
...DeleteOfferPayloadFragment
}
... on OfferNotFound {
...OfferNotFoundFragment
}
... on OfferIsReadOnly {
...OfferIsReadOnlyFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": DeleteOfferInput}
Response
{"data": {"deleteOffer": DeleteOfferPayload}}
deletePlan
Description
Deletes a Plan. Deployed plans cannot be deleted but its plan versions can be archived using archivePlanVersion
.
Authorized Roles: Plan_Designer
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 new Pllan. Deployed plans cannot be edited.
Authorized Roles: Plan_Designer
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 a Plan Version if it was never deployed.
Authorized Roles: Plan_Designer
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 tenant User.
Authorized Roles: Tenant_Admin
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
from
date, 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
from
date, 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
deployFieldMappings
without providing thepaths
parameter. - This operation will deploy only the field mappings that are specified in the draft.
- If a
from
date is not provided, the current time is used as the defaultfrom
date. - 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
from
date of the existing mapping is earlier than thefrom
date 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 afrom
date that matches or precedes thefrom
date used in the prior deployment of the field mapping you wish to remove.
- Delete the Field Mapping from the draft using
Authorized Roles: Network_Admin
, Plan_Publisher
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 subscribed by accounts. A deployed plan cannot be updated anymore.
Authorized Roles: Plan_Publisher
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 so it can be subscribed by accounts. Plan must be deployed to be able to make it assignable.
Authorized Roles: Plan_Publisher
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 subscribed by accounts.
Authorized Roles: Plan_Publisher
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}}
resetUserPassword
Description
Resets the password of a given User.
Authorized Roles: Tenant_Admin
Response
Returns a ResetUserPasswordResult!
Arguments
Name | Description |
---|---|
input - ResetUserPasswordInput!
|
Parameters for ResetUserPasswordInput |
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).
Authorized Roles: Account_Admin
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 PlanVersionIsNotAssignable {
...PlanVersionIsNotAssignableFragment
}
... on AccountNotFound {
...AccountNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on SubscribeToPlanVersionValidationFailed {
...SubscribeToPlanVersionValidationFailedFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
}
}
Variables
{"input": SubscribeToPlanVersionInput}
Response
{
"data": {
"subscribeToPlan": SubscribeToPlanVersionPayload
}
}
updateAccount
Description
Updates Account attributes.
Authorized Roles: Account_Admin
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}}
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
Creates a lifecycle rule on EDR S3 bucket to move objects to Glacier store after a period of time.
Authorized Roles: Tenant_Admin
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
}
}
updateDebit
Description
Updates a RESERVED debit request.
Authorized Roles: Account_Admin
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.
Authorized Roles: Account_Admin
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
Updates a Field Mapping in draft. Draft field mappings need to be deployed using deployFieldMappings
to become effective.
Authorized Roles: Network_Operator
, Plan_Publisher
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 config of the current tenant.
Authorized Roles: 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 Offer attributes.
Authorized Roles: Account_Admin
Response
Returns an UpdateOfferResult!
Arguments
Name | Description |
---|---|
input - UpdateOfferInput!
|
Parameters for UpdateOffer. |
Example
Query
mutation updateOffer($input: UpdateOfferInput!) {
updateOffer(input: $input) {
... on UpdateOfferPayload {
...UpdateOfferPayloadFragment
}
... on OfferNotFound {
...OfferNotFoundFragment
}
... on InvalidField {
...InvalidFieldFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on CampaignsNotEnabled {
...CampaignsNotEnabledFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdateOfferInput}
Response
{"data": {"updateOffer": UpdateOfferPayload}}
updatePlan
Description
Updates attributes of a Plan, such as name.
Authorized Roles: Plan_Designer
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 attributes of a Plan Service, such as name.
Authorized Roles: Plan_Designer
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 RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdatePlanServiceInput}
Response
{"data": {"updatePlanService": UpdatePlanServicePayload}}
updatePlanSubscription
Description
Updates properties of a Plan instance subscribed by an Account.
Authorized Roles: Account_Admin
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 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 Plan Version of a Plan that was originally created by using a template.
Authorized Roles: Plan_Designer
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 PlanVersionUpdateAlreadyInProgress {
...PlanVersionUpdateAlreadyInProgressFragment
}
... on InvalidProviderLifecycleStage {
...InvalidProviderLifecycleStageFragment
}
... on RateLimitExceeded {
...RateLimitExceededFragment
}
... on InternalServerError {
...InternalServerErrorFragment
}
}
}
Variables
{"input": UpdatePlanVersionFromInitialTemplateInput}
Response
{
"data": {
"updatePlanVersionFromInitialTemplate": PlanVersionPayload
}
}
updateRatingGroupHierarchy
Description
Updates and deploys after verifying Rating Group hierarchy.
Authorized Roles: Network_Admin
, Plan_Publisher
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.
Authorized Roles: Network_Operator
, Plan_Publisher
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.
Authorized Roles: Plan_Admin
, Plan_Publisher
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 for a given tenant. It returns the updated user or an error.
Authorized Roles: Tenant_Admin
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
Updates user profile for current User.
Authorized Roles: All
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
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. |
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": ["xyz789"],
"creditLimit": 987.65,
"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": "xyz789"
}
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": ["xyz789"]
}
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": "abc123",
"dimensionType": "INCLUSIVE",
"values": ["xyz789"]
}
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": "xyz789",
"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": "abc123"
}
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": 123.45}
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": 123.45}
AccountCohortNotFound
Description
An error type to be thrown if a given Account Cohort was not found.
Example
{
"providerId": 4,
"id": 4,
"errorCode": "abc123",
"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": "xyz789",
"errorMessage": "abc123"
}
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": "abc123",
"errorMessage": "xyz789"
}
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": "abc123",
"billingDayOfMonth": 123,
"lastBillingDate": AWSDate,
"longFirstBillingCycle": false
}
AccountResult
Description
Return type of Account including all possible errors.
Types
Union Types |
---|
Example
Account
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": 987,
"hardLimitTps": 123,
"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": "xyz789",
"groupClaim": "xyz789",
"groups": ["xyz789"],
"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": 987, "value": 987.65, "customData": AWSJSON}
Boolean
Description
The Boolean
scalar type represents true
or false
.
BulkUploadMetadataInput
Description
Input parameters for bulk uploading metadata
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
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 |
---|---|
providerId - ID!
|
A unique identifier of a service provider. |
accountId - ID!
|
A unique identifier of an account. |
planSubscriptionId - ID
|
A unique identifier of an plan subscription. |
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 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. |
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. |
Example
{
"providerId": 4,
"accountId": 4,
"planSubscriptionId": "4",
"planVersionId": "4",
"from": AWSDateTime,
"to": AWSDateTime
}
CancelPlanVersionSubscriptionPayload
CancelPlanVersionSubscriptionResult
Description
Return type of CancelPlanVersionSubscription including all possible errors.
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": "xyz789",
"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 posibility 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": "abc123",
"persistent": false,
"period": CounterPeriod,
"selector": "xyz789",
"increment": "xyz789",
"states": [CounterState],
"notificationFields": ["abc123"]
}
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": true,
"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": "xyz789"}
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": "xyz789",
"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. |
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": ["abc123"],
"creditLimit": 987.65,
"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
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": "abc123",
"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. |
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. |
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. |
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. |
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": "abc123",
"name": "abc123",
"fee": 987.65,
"firstUsageFee": 987.65,
"renewalGracePeriod": [DurationInput],
"purchaseFee": 987.65,
"period": RecurringPeriodInput,
"services": [InitialTemplateServiceInput],
"notificationPeriodsBeforeExpiration": [123],
"notificationCreditLimitThresholds": [987.65],
"json": AWSJSON,
"priority": 987.65,
"proratingOptions": ProratingOptionsInput
}
CreatePlanFromInitialTemplateResult
Description
Return type of CreatePlanFromInitialTemplate including all possible errors.
InvalidField (InvalidInteger)
- If "periodAllowance" is not an integer number.InvalidField (InvalidPositiveNumber)
- If "periodAllowance" is smaller than 0.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 plan
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": "abc123",
"planServices": [4],
"counters": [CounterInput],
"priority": 987.65
}
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 accross the plan.InvalidField (InvalidCounterStates)
- Thresholds and names of states must be unique accross 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. |
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": "xyz789",
"ruleSets": RuleSetsInput,
"providedFields": [ProvidedFieldInput],
"ratingGroupId": 987,
"balanceName": "abc123",
"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.
InvalidField (InvalidRatingGroup)
- There is no provided rating group ID in the hierarchy or provided rating group ID is the Root.
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. "overage" is not needed.AllowanceAndMonetaryRatesNotAllowed
- A service in "services" can not specify both "unit" and "monetary". Only one of these entries is allowed.
Example
{
"errorCode": "xyz789",
"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. 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. |
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. |
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. |
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. |
proratingOptions - ProratingOptionsInput
|
The prorating options for the plan |
Example
{
"providerId": "4",
"planVersionId": "4",
"version": "xyz789",
"fee": 987.65,
"firstUsageFee": 987.65,
"purchaseFee": 987.65,
"period": RecurringPeriodInput,
"notificationPeriodsBeforeExpiration": [123],
"notificationCreditLimitThresholds": [123.45],
"renewalGracePeriod": [DurationInput],
"json": AWSJSON,
"priority": 987.65,
"services": [InitialTemplateServiceInput],
"proratingOptions": ProratingOptionsInput
}
CreatePlanVersionFromInitialTemplateResult
Description
Return type of CreatePlanVersionFromInitialTemplate including all possible errors.
InvalidField (InvalidInteger)
- If "periodAllowance" is not an integer number.InvalidField (InvalidPositiveNumber)
- If "periodAllowance" is smaller than 0.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 plan
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": "xyz789",
"expiry": AWSDateTime,
"alertInterval": 123
}
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": 987.65}
CreditAccountPayload
Description
Return type of a Credit response.
Fields
Field Name | Description |
---|---|
account - Account!
|
The credited account. |
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.
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": "xyz789",
"errorMessage": "xyz789"
}
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": 123}
DebitReservationNotFound
Description
An error type to be thrown if the debit reservation was not found.
Example
{
"providerId": "4",
"reservationId": 4,
"errorCode": "xyz789",
"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"
DeleteAccountCohortInput
DeleteAccountCohortPayload
DeleteAccountCohortResult
Example
DeleteAccountCohortPayload
DeleteAccountInput
DeleteAccountPayload
DeleteAccountResult
Description
Return type of DeleteAccount including all possible errors.
Example
DeleteAccountPayload
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
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.
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": "xyz789"
}
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": "abc123",
"errorMessage": "xyz789"
}
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": "abc123",
"errorMessage": "abc123"
}
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 migrated. |
|
An existing subscription has been cancelled. |
|
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. |
|
Create a spending limit subscription. |
|
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 beed updated. |
|
A plan has beed 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 hirarchy has been updated. |
|
A new rating group hirarchy 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.
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": "xyz789",
"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": "xyz789",
"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
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!
|
|
errorMessage - String
|
Example
{
"fieldMapping": FieldMapping,
"errorCode": "xyz789",
"errorMessage": "xyz789"
}
FieldMappingNotFound
Description
An error type to be thrown if a field mapping was not found.
Example
{
"providerId": "4",
"path": "abc123",
"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
987.65
GetAccountCohortInput
GetAccountCohortResult
Example
AccountCohort
GetAccountCohortsInput
Description
Defines the input for the GetAccountCohorts query.
Example
{
"providerId": "4",
"first": 123,
"after": "xyz789"
}
GetAccountCohortsResult
Types
Union Types |
---|
Example
AccountCohortConnection
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
GetMyExportJobsInput
Description
Input type for GetMyExportJobs.