Webex Send Activation Email API

The Send Activation Email API from Webex — 3 operation(s) for send activation email.

OpenAPI Specification

webex-send-activation-email-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Webex Admin Address Book Send Activation Email API
  version: 1.0.0
  description: The Webex Admin APIs provide comprehensive programmatic access to administrative functions for managing Webex organizations, users, licenses, and settings. These APIs enable automation of user provisioning, license assignment, compliance management, and audit event retrieval. Administrators can integrate with enterprise identity systems, enforce security policies, monitor usage, and streamline onboarding/offboarding processes. The APIs support granular control over organizational resources, making them ideal for large-scale deployments and custom admin tooling.
tags:
- name: Send Activation Email
paths:
  /identity/organizations/{orgId}/jobs/sendActivationEmails:
    post:
      responses:
        '202':
          description: Accepted
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkActivationEmailResendJobDetails'
              example:
                name: resendinviteemail
                id: Y2lzY29zcGFyazovL3VzL0pPQl9JRC9lNzc4NWU3YS1mNmFiLTRjNTEtYWVjOS00YTg5NWQyOTdjMjc
                trackingId: NA_5c8428d1-dbe9-42c3-bb5d-8f0cd98cea07
                sourceUserId: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iZmI0YjA5MC1mY2VhLTQ4OGEtOTRmMC0wZWMxODk3ZTIwZGE
                sourceCustomerId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xNjcwNjc3NS00NTQzLTRmZDMtODY3Ny0wYmEwMWYyNTRlZjQ
                targetCustomerId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yMDIwYTkyMC0zMTRjLTQ3NmUtYmNiMS1hNDJhNGI2YzM2MDM
                instanceId: 3
                jobExecutionStatus:
                - id: 3
                  startTime: '2024-05-16T20:24:24.924Z'
                  lastUpdated: '2024-05-16T20:24:24.924Z'
                  statusMessage: STARTED
                  exitCode: UNKNOWN
                  createdTime: '2024-05-16T20:24:24.888Z'
                  timeElapsed: PT0S
                latestExecutionStatus: STARTED
                latestExecutionExitCode: UNKNOWN
                counts:
                  userResendInviteSent: 0
                  userResendInviteFailed: 0
                  userResendInviteSkipped: 0
                  totalUsers: 0
                allowAdminInviteEmails: true
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
      summary: Initiate Bulk Activation Email Resend Job
      operationId: Initiate Bulk Activation Email Resend Job
      description: 'Initiate a bulk activation email resend job that sends an activation email to all eligible users in an organization. Only a single instance of the job can be running for an organization.


        Requires a full or user administrator auth token with a scope of `spark-admin:people_write`.'
      tags:
      - Send Activation Email
      parameters:
      - name: orgId
        in: path
        description: Initiate job for this organization.
        required: true
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yMDIwYTkyMC0zMTRjLTQ3NmUtYmNiMS1hNDJhNGI2YzM2MDM
        schema:
          type: string
  /identity/organizations/{orgId}/jobs/sendActivationEmails/{jobId}/status:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkActivationEmailResendJobDetails'
              example:
                name: resendinviteemail
                id: Y2lzY29zcGFyazovL3VzL0pPQl9JRC9lNzc4NWU3YS1mNmFiLTRjNTEtYWVjOS00YTg5NWQyOTdjMjc
                trackingId: NA_5c8428d1-dbe9-42c3-bb5d-8f0cd98cea07
                sourceUserId: Y2lzY29zcGFyazovL3VzL1BFT1BMRS9iZmI0YjA5MC1mY2VhLTQ4OGEtOTRmMC0wZWMxODk3ZTIwZGE
                sourceCustomerId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8xNjcwNjc3NS00NTQzLTRmZDMtODY3Ny0wYmEwMWYyNTRlZjQ
                targetCustomerId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yMDIwYTkyMC0zMTRjLTQ3NmUtYmNiMS1hNDJhNGI2YzM2MDM
                instanceId: 3
                jobExecutionStatus:
                - id: 3
                  startTime: '2024-05-16T20:24:24.924Z'
                  endTime: '2024-05-16T20:24:30.772Z'
                  lastUpdated: '2024-05-16T20:24:30.782Z'
                  statusMessage: COMPLETED
                  exitCode: COMPLETED
                  createdTime: '2024-05-16T20:24:24.888Z'
                  stepExecutionStatuses:
                  - id: 5
                    startTime: '2024-05-16T20:24:24.972Z'
                    endTime: '2024-05-16T20:24:30.700Z'
                    lastUpdated: '2024-05-16T20:24:30.700Z'
                    statusMessage: COMPLETED
                    exitCode: COMPLETED
                    name: resendinviteemailGenerateUserReport
                    timeElapsed: PT5.728S
                  - id: 6
                    startTime: '2024-05-16T20:24:30.706Z'
                    endTime: '2024-05-16T20:24:30.765Z'
                    lastUpdated: '2024-05-16T20:24:30.765Z'
                    statusMessage: COMPLETED
                    exitCode: COMPLETED
                    name: resendinviteemailProcessUsersFromReport
                    timeElapsed: PT0.059S
                  timeElapsed: PT5.787S
                latestExecutionStatus: COMPLETED
                latestExecutionExitCode: COMPLETED
                counts:
                  userResendInviteSent: 0
                  userResendInviteFailed: 0
                  userResendInviteSkipped: 1
                  totalUsers: 1
                allowAdminInviteEmails: true
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
      summary: Get Bulk Activation Email Resend Job Status
      operationId: Get Bulk Activation Email Resend Job Status
      description: 'Get the details of an activation email resend job by its job ID.


        Requires a full or user administrator auth token with a scope of `spark-admin:people_write` or read-only administrator auth token with a scope of `spark-admin:people_read`.'
      tags:
      - Send Activation Email
      parameters:
      - name: orgId
        in: path
        description: Check job status for this organization.
        required: true
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yMDIwYTkyMC0zMTRjLTQ3NmUtYmNiMS1hNDJhNGI2YzM2MDM
        schema:
          type: string
      - name: jobId
        in: path
        description: Retrieve job status for this `jobId`.
        required: true
        example: Y2lzY29zcGFyazovL3VzL0pPQl9JRC9lNzc4NWU3YS1mNmFiLTRjNTEtYWVjOS00YTg5NWQyOTdjMjc
        schema:
          type: string
  /identity/organizations/{orgId}/jobs/sendActivationEmails/{jobId}/errors:
    get:
      responses:
        '200':
          description: OK
          headers:
            Link:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseObject'
              example:
                items:
                - itemNumber: 1
                  error:
                    key: '304'
                    message:
                    - description: Re-send invite for 875ae291-3430-4ccb-85de-3db73ccb31d8 by bfb4b090-fcea-488a-94f0-0ec1897e20da is suppressed as the user 875ae291-3430-4ccb-85de-3db73ccb31d8 has already received an invitation email in last 24 hours ; Error with user@example.com.
                      code: ATLAS-600199
                      locationId: null
                  trackingId: NA_e0047e0e-804b-4cbc-817a-80c99d5a87a2_1_2
        '400':
          description: 'Bad Request: The request was invalid or cannot be otherwise served. An accompanying error message will explain further.'
        '401':
          description: 'Unauthorized: Authentication credentials were missing or incorrect.'
        '403':
          description: 'Forbidden: The request is understood, but it has been refused or access is not allowed.'
        '404':
          description: 'Not Found: The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method.'
        '405':
          description: 'Method Not Allowed: The request was made to a resource using an HTTP request method that is not supported.'
        '409':
          description: 'Conflict: The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once.'
        '410':
          description: 'Gone: The requested resource is no longer available.'
        '415':
          description: 'Unsupported Media Type: The request was made to a resource without specifying a media type or used a media type that is not supported.'
        '423':
          description: 'Locked: The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again.'
        '428':
          description: 'Precondition Required: File(s) cannot be scanned for malware and need to be force downloaded.'
        '429':
          description: 'Too Many Requests: Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made.'
        '500':
          description: 'Internal Server Error: Something went wrong on the server. If the issue persists, feel free to contact the [Webex Developer Support team](/explore/support).'
        '502':
          description: 'Bad Gateway: The server received an invalid response from an upstream server while processing the request. Try again later.'
        '503':
          description: 'Service Unavailable: Server is overloaded with requests. Try again later.'
        '504':
          description: 'Gateway Timeout: An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it.'
      summary: Get Bulk Activation Email Resend Job Errors
      operationId: Get Bulk Activation Email Resend Job Errors
      description: 'Get errors of an activation email resend job by its job ID.


        Requires a full or user administrator auth token with a scope of `spark-admin:people_write` or read-only administrator auth token with a scope of `spark-admin:people_read`.'
      tags:
      - Send Activation Email
      parameters:
      - name: orgId
        in: path
        description: Check job status for this organization.
        required: true
        example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi8yMDIwYTkyMC0zMTRjLTQ3NmUtYmNiMS1hNDJhNGI2YzM2MDM
        schema:
          type: string
      - name: jobId
        in: path
        description: Retrieve job status for this `jobId`.
        required: true
        example: Y2lzY29zcGFyazovL3VzL0pPQl9JRC9lNzc4NWU3YS1mNmFiLTRjNTEtYWVjOS00YTg5NWQyOTdjMjc
        schema:
          type: string
      - name: max
        in: query
        description: Limit the maximum number of errors in the response.
        example: '100'
        schema:
          type: number
          default: 50
components:
  schemas:
    ItemObject:
      type: object
      properties:
        itemNumber:
          type: number
          description: Index of error.
        trackingId:
          type: string
          description: Unique identifier to track the HTTP request.
        error:
          $ref: '#/components/schemas/ErrorObject'
          description: Error details.
    ErrorObject:
      type: object
      properties:
        key:
          type: string
          description: HTTP status code.
        message:
          type: array
          items:
            $ref: '#/components/schemas/ErrorMessageObject'
          description: List of error messages.
    ExecutionStatus:
      type: string
      enum:
      - COMPLETED
      - STARTING
      - STARTED
      - STOPPING
      - FAILED
      - ABANDONED
      - UNKNOWN
      description: " * `COMPLETED` - Step or job has completed.\n * `STARTING` - Step or job is starting.\n * `STARTED` - Step or job is running.\n * `STOPPING` - Step or job is stopping.\n * `FAILED` - Step or job has failed with an error.\n * `ABANDONED` - Step or job has been abandone (manually stopped).\n * `UNKNOWN` - Step or job status is unknown.\n"
    BulkActivationEmailResendJobDetails:
      type: object
      required:
      - name
      - id
      - trackingId
      - sourceUserId
      - sourceCustomerId
      - targetCustomerId
      - instanceId
      - latestExecutionStatus
      - counts
      properties:
        name:
          type: string
          description: Job name.
        id:
          type: string
          description: Unique identifier of the job.
        trackingId:
          type: string
          description: Unique identifier to track the flow of HTTP requests.
        sourceUserId:
          type: string
          description: Unique identifier to identify which user has run the job.
        sourceCustomerId:
          type: string
          description: Unique identifier to identify the customer who has run the job.
        targetCustomerId:
          type: string
          description: Unique identifier to identify the customer for which the job was run.
        instanceId:
          type: number
          description: Unique identifier to identify the instance of the job.
        jobExecutionStatus:
          type: array
          items:
            $ref: '#/components/schemas/StepExecutionStatus'
          description: Contains the execution statuses of all the steps involved in the execution of the job.
        latestExecutionStatus:
          $ref: '#/components/schemas/ExecutionStatus'
          description: Indicates the most recent status of the job at the time of invocation.
        latestExecutionExitCode:
          type: string
          enum:
          - UNKNOWN
          - COMPLETED
          - FAILED
          - STOPPED
          - COMPLETED_WITH_ERRORS
          description: "Most recent exit code of the job at the time of invocation.\n * `UNKNOWN` - Job is in progress.\n * `COMPLETED` - Job has completed successfully.\n * `FAILED` - Job has failed.\n * `STOPPED` - Job has been stopped.\n * `COMPLETED_WITH_ERRORS` - Job has completed with errors.\n"
        counts:
          $ref: '#/components/schemas/BulkActivationEmailResendJobCounts'
          description: Summary of statuses.
        allowAdminInviteEmails:
          type: boolean
          description: Indicates if the org allows admin invite emails to be sent.
    BulkActivationEmailResendJobCounts:
      type: object
      required:
      - userResendInviteSent
      - userResendInviteFailed
      - userResendInviteSkipped
      - totalUsers
      properties:
        userResendInviteSent:
          type: number
          description: Count of users sent an invitation.
        userResendInviteFailed:
          type: number
          description: Count of users who failed to receive an invitation.
        userResendInviteSkipped:
          type: number
          description: Count of users who were skipped.
        totalUsers:
          type: number
          description: Total count of users processed.
    ErrorMessageObject:
      type: object
      properties:
        description:
          type: string
          description: Error message.
        code:
          type: string
          description: Internal error code.
        locationId:
          type: string
          description: Not used.
    ErrorResponseObject:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/ItemObject'
    StepExecutionStatus:
      type: object
      required:
      - id
      properties:
        id:
          type: number
          description: Unique identifier of the step
        startTime:
          type: string
          description: Step execution start time in UTC format.
        endTime:
          type: string
          description: Step execution end time in UTC format.
        lastUpdated:
          type: string
          description: Last time the step's execution status was updated in UTC format.
        statusMessage:
          $ref: '#/components/schemas/ExecutionStatus'
          description: Displays the most recent execution status of the step.
        exitCode:
          $ref: '#/components/schemas/ExecutionStatus'
          description: Final execution status of the step.
        name:
          type: string
          description: Step name.
        timeElapsed:
          type: string
          description: Time elapsed since the step execution started.
  securitySchemes:
    oauth2:
      flows:
        authorizationCode:
          authorizationUrl: /
          scopes: {}
          tokenUrl: /
      type: oauth2
    bearer-key:
      type: http
      description: e.g. Bearer YOUR_AUTHORIZATION_TOKEN
      scheme: bearer
      bearerFormat: JWT
    bearerAuth:
      type: oauth2
      description: OAuth 2.0 Bearer token authentication
      flows:
        authorizationCode:
          authorizationUrl: https://webexapis.com/v1/authorize
          tokenUrl: https://webexapis.com/v1/access_token
          scopes:
            spark:applications_token: Create access tokens for Service Apps