Ingram Micro Integration Setup

Integrating Rewst with Ingram Micro Cloud Marketplace offers users a seamless and efficient way to access and manage cloud services and subscriptions. With the integration, Rewst users can leverage the vast catalog of cloud solutions available in the Ingram Micro Cloud Marketplace, making it easier to discover, provision, and manage cloud services within the Rewst platform. Users can streamline the procurement and provisioning processes, track usage and billing, and efficiently manage their cloud subscriptions, all from a single integrated platform. The integration empowers users to maximize the value of cloud services, simplify their workflows, and ensure a seamless experience when working with cloud solutions through Rewst and the Ingram Micro Cloud Marketplace.

Setup

Contact Ingram Micro Integration Support at marketplacepsa@ingrammicro.com if you don’t have access to your marketplace API credentials.

  1. Create a new Staff Account for the Rewst Application.

  2. Name this user rewst and ensure that you generate a safe, unique password.

  3. Activate the API from the Ingram Cloud Marketplace. You can only have a single user assigned to the Marketplace API App that you create.

    • The user must be activated in the portal on the main "Users" page.

    • When you click the user, it may have an orange bar that says the user needs to accept the invite in their mail.

    • As an admin, you can activate the account manually for them and then reset the password if required.

  4. Navigate to the integrations page in Rewst.

  5. Click on the Ingram Micro Cloud integration.

  6. Fill out the configuration form:

    • Username: This is the username of the user associated with the API. Clicking on the "Marketplace API" menu on the left navigation will show you the username.

    • Password: The password is the password of that account. This can be set in the "Users" section of the control panel. The right user will match the "Username" under "User Settings".

    • Subscription Key: The subscription key can then be found on the Marketplace API.

  7. Click on the Save Configuration button.

Actions

Customers

List Customers

Get a list of customers and their basic details.

GET /customers

KeyTypeDescription

name

String (?)

Find customers that are similar to the provided name.

email

String (?)

Find customers that have a contact person with the provided email address.

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

resellerId

Im Cloud Reseller id

None Provided

Create Customer

Create a customer in the platform and associate it with the reseller that sends this request.

POST /customers

KeyTypeDescription

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

attributes

String (?)

None Provided

status

String

None Provided

name

String (?)

The name of the account's company

language

String (?)

The language for the account's notifications and the defaultlanguage for the user panel login

taxRegId

String (?)

The tax registration ID that is used by the platform in tax calculation and determining tax exemption.

Get Customer

Get extended details about a specific customer in the platform.

GET /customers/{id}

KeyTypeDescription

id

Im Cloud Customer id

None Provided

Update Customer

Update details and status of the existing customer.

PATCH /customers/{id}

KeyTypeDescription

id*

Im Cloud Customer id

None Provided

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

attributes

String (?)

None Provided

status

String

None Provided

name

String (?)

The name of the account's company

language

String (?)

The language for the account's notifications and the defaultlanguage for the user panel login

taxRegId

String (?)

The tax registration ID that is used by the platform in tax calculation and determining tax exemption.

List Reseller Customer(S)

Get a list of customers and their basic details for the specified reseller.

GET /resellers/{id}/customers

KeyTypeDescription

id*

Im Cloud Reseller id

None Provided

name

String (?)

Find customers that are similar to the provided name.

email

String (?)

Find customers that have a contact person with the provided email address.

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

Create Reseller Customer

Create a customer in the platform and associate it with the specified reseller.

POST /resellers/{id}/customers

KeyTypeDescription

id*

Im Cloud Reseller id

None Provided

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

attributes

String (?)

None Provided

status

String

None Provided

name

String (?)

The name of the account's company

language

String (?)

The language for the account's notifications and the defaultlanguage for the user panel login

taxRegId

String (?)

The tax registration ID that is used by the platform in tax calculation and determining tax exemption.


Objects

Address - Customers

KeyTypeDescription

streetAddress

String (?)

None Provided

addressExtension

String (?)

Secondary information in the address such as apartment or suite number.

postalCode

String (?)

The postal code for the specified street address.

city

String (?)

The city of the postal address.

state

String (?)

The state (if applicable) of the city (mandatory for certain countries).

countryCode

String

None Provided


Contactperson - Customers

KeyTypeDescription

type

String

This defines the contact type.

firstName

String (?)

This is the first name of the contact.

lastName

String (?)

This is the last name of the contact.

email

String (?)

This is the email address of the contact.

phoneNumber

String (?)

This is the phone number of the contact in ITU-T E.164 notation. Extension numbers may be added by adding a '#' at the end.

login

String (?)

This is an optional parameter (only for the contactPerson of type admin) used when you musthave a certain login name for a customer administrator instead of an automatically generated one.

password

String (?)

This is a password assigned to the administrator login.The password strength must comply with the quality level requirements in the platform. Typically, it must beat least 7-character length, including letters in upper and lower cases, digits, and special characters.

Orders

Get Order

Get extended details of a specific order.

GET /orders/{id}

KeyTypeDescription

id

Im Cloud Order id

None Provided

Update Order

Update existing order properties and status.

PATCH /orders/{id}

KeyTypeDescription

id*

Im Cloud Order id

None Provided

customerId

Im Cloud Customer id

None Provided

subscriptionId

Im Cloud Subscription id

None Provided

orderNumber

Im Cloud Order orderNumber

None Provided

type

String

None Provided

poNumber

String (?)

The purchase order number provided by the customer.

creationDate

String (?)

The date and time when the order was created in the platform.

provisioningDate

String (?)

The date and time when the order was provisioning in the platform.

status

String

None Provided

attributes

String (?)

The dictionary of custom attributes

creditCheck

String (?)

Defines whether customer's credit should be checked on order processing.

autorenewal

String (?)

Migration Order - Subscription Auto Renewal Flag

startDate

String (?)

None Provided

migrationDate

String (?)

None Provided

expirationDate

String (?)

None Provided

lastBillingDate

String (?)

None Provided

nextBillingDate

String (?)

None Provided

migrationProgram

String (?)

None Provided

planId

Im Cloud Service Plan id

None Provided

billingModel

String

None Provided

scheduledOn

String (?)

None Provided

List Orders

Get basic details of orders on the platform.

GET /orders

KeyTypeDescription

customerId

Im Cloud Customer id

None Provided

subscriptionId

Im Cloud Subscription id

None Provided

orderNumber

Im Cloud Order Number orderNumber

None Provided

status

String (?)

None Provided

creationTimeFrom

String (?)

This is the beginning of a specific period of time used to search for orders created during that same period.

creationTimeTo

String (?)

This is the end of a specific period of time used to search for orders

statusCode

String (?)

Internal status code of the order

Create Order

Place an order for a set of products for a specific customer.

POST /orders

KeyTypeDescription

customerId

Im Cloud Customer id

None Provided

subscriptionId

Im Cloud Subscription id

None Provided

orderNumber

Im Cloud Order orderNumber

None Provided

type

String

None Provided

poNumber

String (?)

The purchase order number provided by the customer.

creationDate

String (?)

The date and time when the order was created in the platform.

provisioningDate

String (?)

The date and time when the order was provisioning in the platform.

status

String

None Provided

attributes

String (?)

The dictionary of custom attributes

creditCheck

String (?)

Defines whether customer's credit should be checked on order processing.

autorenewal

String (?)

Migration Order - Subscription Auto Renewal Flag

startDate

String (?)

None Provided

migrationDate

String (?)

None Provided

expirationDate

String (?)

None Provided

lastBillingDate

String (?)

None Provided

nextBillingDate

String (?)

None Provided

migrationProgram

String (?)

None Provided

planId

Im Cloud Service Plan id

None Provided

billingModel

String

None Provided

scheduledOn

String (?)

None Provided

Estimate An Order Price

Get estimated prices of an order.

POST /orders/estimate

KeyTypeDescription

customerId

Im Cloud Customer id

None Provided

subscriptionId

Im Cloud Subscription id

None Provided

orderNumber

Im Cloud Order orderNumber

None Provided

type

String

None Provided

poNumber

String (?)

The purchase order number provided by the customer.

creationDate

String (?)

The date and time when the order was created in the platform.

provisioningDate

String (?)

The date and time when the order was provisioning in the platform.

status

String

None Provided

attributes

String (?)

The dictionary of custom attributes

creditCheck

String (?)

Defines whether customer's credit should be checked on order processing.

autorenewal

String (?)

Migration Order - Subscription Auto Renewal Flag

startDate

String (?)

None Provided

migrationDate

String (?)

None Provided

expirationDate

String (?)

None Provided

lastBillingDate

String (?)

None Provided

nextBillingDate

String (?)

None Provided

migrationProgram

String (?)

None Provided

planId

Im Cloud Service Plan id

None Provided

billingModel

String

None Provided

scheduledOn

String (?)

None Provided

List Reseller's Orders

Get basic details of orders in the platform for the specified reseller.

GET /resellers/{id}/orders

KeyTypeDescription

id

Im Cloud Reseller id

None Provided

customerId

Im Cloud Customer id

None Provided

subscriptionId

Im Cloud Subscription id

None Provided

status

String (?)

None Provided

creationTimeFrom

String (?)

This is the beginning of a specific period of time used to search for orders created during that same period.

creationTimeTo

String (?)

This is the end of a specific period of time used to search for orders


Objects - Orders

Total - Orders

KeyTypeDescription

currency

String (?)

The currency code to be used for charging.

amount

String (?)

Amount of order.


Orderdetail - Orders

KeyTypeDescription

type

String

None Provided

mpn

String (?)

None Provided

productId

Im Cloud Product mpn

None Provided

description

String (?)

None Provided

quantity

String (?)

None Provided


Subscriptionperiod - Orders

KeyTypeDescription

type

String (?)

The period duration type.

duration

String (?)

The period duration.


Product - Orders

KeyTypeDescription

mpn

String (?)

None Provided

vendor

String (?)

None Provided

newMPN

String (?)

None Provided

name

String (?)

None Provided

quantity

String (?)

The number of ordered product items.

subscriptionId

Im Cloud Subscription id

None Provided


Durationoforderdetail - Orders

KeyTypeDescription

type

String (?)

None Provided

duration

String (?)

None Provided


Unitprice - Orders

KeyTypeDescription

currency

String (?)

None Provided

amount

String (?)

None Provided


Astructurerepresentingthetotalcalculatedprice - Orders

KeyTypeDescription

currency

String (?)

None Provided

amount

String (?)

None Provided


Astructurerepresentingthediscount - Orders

KeyTypeDescription

type

String

None Provided

value

String (?)

None Provided

amount

String (?)

None Provided


Astructurerepresentingthetaxamount - Orders

KeyTypeDescription

currency

String (?)

None Provided

amount

String (?)

None Provided


Billingperiod - Orders

KeyTypeDescription

type

String (?)

None Provided

duration

String (?)

None Provided


Extendedprice - Orders

KeyTypeDescription

currency

String (?)

None Provided

amount

String (?)

None Provided


Deal - Orders

KeyTypeDescription

freezePrices

String (?)

None Provided


Parameter - Orders

KeyTypeDescription

name

String (?)

None Provided

value

String (?)

None Provided

structured_value

String (?)

None Provided


Agreement - Orders

KeyTypeDescription

sellerId

Im Cloud Reseller id

None Provided

buyerId

Im Cloud Customer id

None Provided


Price - Orders

KeyTypeDescription

currency

String (?)

None Provided

amount

String (?)

None Provided

type

String

None Provided


Discount - Orders

KeyTypeDescription

applicableTo

Array

Applicability to order types.


Discountprice - Orders

KeyTypeDescription

currency

String (?)

None Provided

amount

String (?)

None Provided

type

String

None Provided

Products

List Products

Get a list of products available for the requester to sell or resell with details included.

GET /products

KeyTypeDescription

name

String (?)

None Provided

serviceName

String (?)

None Provided

mpn

String (?)

MPN value

vendor

String (?)

None Provided

Reports

List Reports

Get a list of the reseller's rated data reports exported during the specified period.

GET /reports

KeyTypeDescription

name

String (?)

The name of the requested reports.

format

String (?)

The format filter of the requested reports

status

String (?)

The status filter of the requested reports

type

String (?)

The type filter of the requested reports

from

String (?)

The first day of the requested period.

to

String (?)

The last day of the requested period.

Schedule A One Time Report

Schedule the generation of a one-time report.

POST /reports

KeyTypeDescription

name

String (?)

The preconfigured report name as defined in the platform. (i.e. Daily Report)

customizationName

String (?)

None Provided

status

String

The report generation status.

type

String

The report generation type.

format

String

The report file format.

creationDate

String (?)

The report file creation date and time.

startDate

String (?)

The report period start date and time.

endDate

String (?)

The report period end date and time.

downloadUrl

String (?)

The URL of a specific report file.

Get Report

Get extended details about a specific report in the platform.

GET /reports/{reportId}

KeyTypeDescription

reportId*

Im Cloud Report id

None Provided

Resellers

List Resellers

Get a list of resellers and their basic details.

GET /resellers

KeyTypeDescription

name

String (?)

None Provided

email

String (?)

None Provided

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

Create Reseller

POST /resellers

KeyTypeDescription

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

attributes

String (?)

None Provided

status

String

None Provided

name

String (?)

The name of the account's company

language

String (?)

The language for the account's notifications and the defaultlanguage for the user panel login

taxRegId

String (?)

The tax registration ID that is used by the platform in tax calculation and determining tax exemption.

currency

String (?)

Reseller currency

taxationProviderName

String (?)

Reseller taxation engine name

customerClass

String (?)

None Provided

Get Reseller

Get extended details about a specific reseller in the platform.

GET /resellers/{id}

KeyTypeDescription

id*

Im Cloud Reseller id

None Provided

Update Reseller

Update details of the existing reseller.

PATCH /resellers/{id}

KeyTypeDescription

id*

Im Cloud Reseller id

None Provided

externalId

String (?)

Find customers that have an external ID assigned equal to the provided ID.

attributes

String (?)

None Provided

status

String

None Provided

name

String (?)

The name of the account's company

language

String (?)

The language for the account's notifications and the defaultlanguage for the user panel login

taxRegId

String (?)

The tax registration ID that is used by the platform in tax calculation and determining tax exemption.

currency

String (?)

Reseller currency

taxationProviderName

String (?)

Reseller taxation engine name

customerClass

String (?)

None Provided


Objects - Resellers

Address - Resellers

KeyTypeDescription

streetAddress

String (?)

None Provided

addressExtension

String (?)

Secondary information in the address such as apartment or suite number.

postalCode

String (?)

The postal code for the specified street address.

city

String (?)

The city of the postal address.

state

String (?)

The state (if applicable) of the city (mandatory for certain countries).

countryCode

String

None Provided


Contactperson - Resellers

KeyTypeDescription

type

String

This defines the contact type.

firstName

String (?)

This is the first name of the contact.

lastName

String (?)

This is the last name of the contact.

email

String (?)

This is the email address of the contact.

phoneNumber

String (?)

This is the phone number of the contact in ITU-T E.164 notation. Extension numbers may be added by adding a '#' at the end.

login

String (?)

This is an optional parameter (only for the contactPerson of type admin) used when you musthave a certain login name for a customer administrator instead of an automatically generated one.

password

String (?)

This is a password assigned to the administrator login.The password strength must comply with the quality level requirements in the platform. Typically, it must beat least 7-character length, including letters in upper and lower cases, digits, and special characters.

Service Plans

List Service Plans

Get basic details of service plans in the platform.

GET /plans

Get Service Plan

Get extended details about a specific service plan with all possible switches in the platform.

GET /plans/{id}

KeyTypeDescription

id*

Im Cloud Service Plan id

None Provided

Subscriptions

List Subscriptions

Get a list of subscriptions belonging to the customers of the reseller that sends the request.

GET /subscriptions

KeyTypeDescription

customerId

Im Cloud Customer id

None Provided

creationDateFrom

String (?)

This is the beginning of a specific period of time used to search for orders created during that same period.

creationDateTo

String (?)

This is the end of a specific period of time used to search for orders

status

String (?)

None Provided

Get Subscription

Get extended details of a specific subscription from the platform.

GET /subscriptions/{id}

KeyTypeDescription

id*

Im Cloud Subscription id

None Provided

Update Subscription Pricing Details

PATCH /subscriptions/{id}/specialPricing

KeyTypeDescription

id*

Im Cloud Subscription id

None Provided

Update Subscription

Update some of the subscription details.

POST /subscriptions/{id}

KeyTypeDescription

id*

Im Cloud Subscription id

None Provided

attributes

String (?)

None Provided

renewalStatus

String (?)

None Provided


Objects - Subscriptions

Product - Subscriptions

KeyTypeDescription

mpn

String (?)

None Provided

id

Im Cloud Product mpn

None Provided


Unitprice - Subscriptions

KeyTypeDescription

currency

String

None Provided

amount

String (?)

None Provided


Unitcost - Subscriptions

KeyTypeDescription

currency

String

None Provided

amount

String (?)

None Provided


Unitprovidercost - Subscriptions

KeyTypeDescription

currency

String

None Provided

amount

String (?)

None Provided

Validations

Validate Product Activation Parameters

Validate activation parameters for a set of products.

POST /validation/parameters

Last updated