Enrollment

Enrollment is a process through which a client or entity formally registers or signs up to participate in a vendor program.

Once the client fulfills all the necessary conditions, they are considered enrolled in the program, and a certificate is issued.

Field
Type
Description

id

string

The identifier for the enrollment.

Example: ENR-1234-1234

href

string

A reference to enrollment in the API.

Example: /v1/catalog/enrollments/PRD-1234-1234

certificate

A reference to the Certificate object for this enrollment.

Example:

{
    "id": "PRG-1234-5678",
    "href": "/program/programs/PRG-1234-5678",
    "name": "Microsoft AI Cloud Partner"
}

program

A reference to the Program object that the partner enrolls in.

Example:

{
    "id": "PRG-1234-1234",
    "href": "v1/catalog/programs/PRG-1234-5678",
    "name": "Microsoft AI Cloud Partner",
    "icon": "/static/PRG-1234-1234/logo.png",
    "applicableTo": "Buyer"
}

applicableTo

string

Defines the scope of the enrollment.

Possible values: Buyer or Licensee.

type

string

Defines if enrollment is new (first time requesting a certificate) or a change (re-enrollment). Possible values: Change or New.

buyer

A reference to the Buyer object if the enrollment applies to the buyer.

Example:

{
    "id": "PRG-1234-1234",
    "href": "v1/catalog/programs/PRG-1234-5678",
    "name": "Microsoft AI Cloud Partner",
    "icon": "/static/PRG-1234-1234/logo.png",
    "applicableTo": "Buyer"
}

licensee

A reference to the Licensee object if the enrollment applies to the licensee.

Example:

{
    "id": "CER-1234-1234",
    "href": "v1/accounts/licensees/LIC-1234-1234-1234"
    "name": "Stark Industries Limited",
    "externalId": "WW-CON-12345678"
}

eligibility

The configuration of the partner program.

Example:

{
  "client": true,
  "partner": false
}

status

enum

The status of the enrollment.

Possible values: Processing, Failed, Completed, or Querying.

statusNotes

messageobject

Notes added during status change by vendor or vendor extensions to indicate the reason for enrollment failure or status change.

Example:

{
    "id": "E001234",
    "message": "Educational certification failed"
}

notes

string

Contains initial customer notes added by the Buyer during the enrollment process. Buyers can edit and add notes at any time for all order statuses.

Example: Enroll for a program needed to purchase product XYZ

error

messageobject

The standard error object. It indicates that an error appeared during parameter validation, which can include markup.

Example:

{
    "id": "E001234",
    "message": "Enrollment has invalid parameters"
}

assignee

The enrollment assignee, set by the vendor. The account must belong to the vendor account.

Example:

{
  "id": "USR-3773-5838", 
  "href": "/accounts/ACC-0774-6909/users/USR-3773-5838",
  "name": "Jack Doe",
}

parameters.fulfillment

An object that holds a concise definition of a parameter, its value, and any associated errors.

Example:

[
  {
      "id": "PRM-1234-1234-1234",
      "name": "Tennant Id",
      "externalId": "tenant_id",
      "constraints": {
          "readonly": false,
          "hidden": true,
          "required": true,
          "unique": false
      },
      "value": "69b73824-ce76-4866-ad47-b615ae9d8998",
      "error": {
          "id": "E001234",
          "message": "Incorrect parameter value"
      }
  }
]

parameters.ordering

An object that holds a concise definition of a parameter, its value, and any associated errors.

Example:

[
  {
      "id": "PRM-1234-1234-1234",
      "name": "Microsoft Partner Number",
      "externalId": "partner_id",
      "constraints": {
          "readonly": false,
          "hidden": true,
          "required": true,
          "unique": false
      },
      "value": "69b73824-ce76-4866-ad47-b615ae9d8998",
      "error": {
          "id": "E001234",
          "message": "Incorrect parameter value"
      }
  }
]

template

Example:

{ 
  "id": "PTP-1234-4444", 
  "href": "/programs/PRG-1234-1234/templates/TPP-1234-4444",
  "name": "Succesful Activation" }

audit

auditObject

The audit information object.

Example:

{
  "created": { "at": "...", "by": { } },
  "updated": { "at": "...", "by": { } }
}

Eligibility

Field
Type
Description

client

boolean

Indicates direct client.

Example: true

partner

boolean

Indicates indirect client (partner).

Example: false

Enrollment Parameter

Field
Type
Description

id

string

The primary identifier for the parameter.

Example: PAR-5542-1187-3130

name

string

The display name of the parameter.

Example: Tenant ID

externalId

string

The ID of the parameter in the external system.

Example: tenant_id

value

string

The parameter value (can be updated).

Example: 69b73824-ce76-4866-ad47-b615ae9d8998 OR

{
     "addressLine1": "23 Oakley wood",
     "city": "Cork",
     "state": "Cork",
     "postalCode": "V23U58N"
}

displayValue

string

The parameter value (read only).

Example: 69b73824-ce76-4866-ad47-b615ae9d8998 OR 23 Oakley Wood, London.

constraints

parameter Constraints

Parameter constraints. When specified, it represents overridden parameter constraints. When unspecified, the parameter constraints must be taken from the parameter definition. Example:

{
    "readonly": false,
    "hidden": true,
    "required": true
}

error

message

The standard error object.

Example:

{
    "id": "E001234",
    "message": "Enrollment has invalid parameters"
}

Enrollment Attachment

The Enrollment Attachment object provides the ability to upload an enrollment attachment (via file upload or license key) to the enrollment object.

Field
Type
Description

id

string

The primary identifier of the attachment.

Example: ATT-0001-0001-0001-001

href

string

A reference to attachment within the API.

name

string

The name of the attachment object.

Example: Guide to establishing a reseller relationship

description

string

The description of the attachment object.

Example: Learn what happens when you establish a reseller relationship with SoftwareOne

type

string

The type of the attachment object.

Example: File

reference

string

The URI to access the attachment object.

Example: microsoft-agreement-certification.pdf

order

orderObject

Example:

{
    "id": "ORD-5542-1187-3130-0991",
    "href": "/commerce/orders/ORD-5542-1187-3130-0991"
}

audit

auditObject

The audit information object.

Example:

{
  "created": { "at": "...", "by": { } },
  "updated": { "at": "...", "by": { } }
}

Examples

{
  "id": "ENR-1234-1234",
  "href": "/v1/products/PRD-1234-1234",
  "certificate": {
    "id": "CER-1234-1234",
    "href": "v1/catalog/certificates/CER-1234-1234"
  },
  "program": {
    "id": "PRG-1234-1234",
    "href": "v1/catalog/programs/PRG-1234-5678",
    "name": "Microsoft AI Cloud Partner",
    "icon": "/static/PRG-1234-1234/logo.png",
    "applicableTo": "Buyer"
  },
  "applicableTo": "Buyer",
  "buyer": {
    "id": "BUY-1234-1234",
    "href": "v1/accounts/buyers/BUY-1234-1234",
    "name": "MPN EU"
  },
  "eligibility": {
    "client": true,
    "partner": true
  },
  "status": "Processing",
  "notes": "draft enrollment for review",
  "assignee": "",
  "parameters.fulfillment": [
  {
      "id": "PRM-1234-1234-1234",
      "name": "Tennant Id",
      "externalId": "tenant_id",
      "constraints": {
          "readonly": false,
          "hidden": true,
          "required": true,
          "unique": false
      },
      "value": "69b73824-ce76-4866-ad47-b615ae9d8998",
      "error": {
          "id": "E001234",
          "message": "Incorrect parameter value"
      }
  }],
  "parameters.ordering": []
}
    

Last updated

Was this helpful?