Soracom · Arazzo Workflow

Soracom Register Subscriber to Group

Version 1.0.0

Register a subscriber by IMSI, activate it, bind it to a group, and confirm its state.

1 workflow 1 source API 1 provider
View Spec View on GitHub IoTCellularLPWANSIMLoRaWANSigfoxMVNOConnectivityEdgeJapanArazzoWorkflows

Provider

soracom

Workflows

register-subscriber-to-group
Register, activate, and group a subscriber by IMSI.
Registers the subscriber identified by IMSI using its PUK/PASSCODE registration secret, activates it, sets its group, and reads the subscriber to verify the active status and group binding.
4 steps inputs: groupId, imsi, registrationSecret outputs: groupId, imsi, status
1
registerSubscriber
registerSubscriber
Register the subscriber to the operator account using its registration secret, also assigning it to the supplied group.
2
activateSubscriber
activateSubscriber
Change the subscriber status to active so it can establish data sessions.
3
setGroup
setGroup
Bind the subscriber to the supplied group so it inherits the group's service configuration.
4
confirmSubscriber
getSubscriber
Read the subscriber back to confirm the final active status and group binding.

Source API Descriptions

Arazzo Workflow Specification

soracom-register-subscriber-to-group-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Soracom Register Subscriber to Group
  summary: Register a subscriber by IMSI, activate it, bind it to a group, and confirm its state.
  description: >-
    Onboards a Soracom subscriber identified by IMSI. The workflow registers
    the subscriber to the operator using its registration secret, activates it
    so it can pass traffic, sets its group to inherit service configuration, and
    reads the subscriber back to confirm the active, grouped state. Every step
    spells out its request inline so the flow can be read and executed without
    opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: simApi
  url: ../openapi/soracom-sim-api-openapi.yml
  type: openapi
workflows:
- workflowId: register-subscriber-to-group
  summary: Register, activate, and group a subscriber by IMSI.
  description: >-
    Registers the subscriber identified by IMSI using its PUK/PASSCODE
    registration secret, activates it, sets its group, and reads the subscriber
    to verify the active status and group binding.
  inputs:
    type: object
    required:
    - imsi
    - registrationSecret
    - groupId
    properties:
      imsi:
        type: string
        description: The IMSI of the target subscriber.
      registrationSecret:
        type: string
        description: The PUK or PASSCODE for the SIM, used to prove ownership at registration.
      groupId:
        type: string
        description: The group ID to bind the subscriber to after activation.
  steps:
  - stepId: registerSubscriber
    description: >-
      Register the subscriber to the operator account using its registration
      secret, also assigning it to the supplied group.
    operationId: registerSubscriber
    parameters:
    - name: imsi
      in: path
      value: $inputs.imsi
    requestBody:
      contentType: application/json
      payload:
        registrationSecret: $inputs.registrationSecret
        groupId: $inputs.groupId
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      registeredImsi: $response.body#/imsi
      statusAfterRegister: $response.body#/status
  - stepId: activateSubscriber
    description: >-
      Change the subscriber status to active so it can establish data sessions.
    operationId: activateSubscriber
    parameters:
    - name: imsi
      in: path
      value: $inputs.imsi
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      statusAfterActivate: $response.body#/status
  - stepId: setGroup
    description: >-
      Bind the subscriber to the supplied group so it inherits the group's
      service configuration.
    operationId: setGroup
    parameters:
    - name: imsi
      in: path
      value: $inputs.imsi
    requestBody:
      contentType: application/json
      payload:
        groupId: $inputs.groupId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      groupId: $response.body#/groupId
  - stepId: confirmSubscriber
    description: >-
      Read the subscriber back to confirm the final active status and group
      binding.
    operationId: getSubscriber
    parameters:
    - name: imsi
      in: path
      value: $inputs.imsi
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      finalStatus: $response.body#/status
      finalGroupId: $response.body#/groupId
  outputs:
    imsi: $steps.registerSubscriber.outputs.registeredImsi
    status: $steps.confirmSubscriber.outputs.finalStatus
    groupId: $steps.confirmSubscriber.outputs.finalGroupId