Add provider instance to customer.

POST /v1/Customers/{customerId}/provider-instances

Available to the roles: csp, reseller

Headers

  • X-Tenant string Required

    The domain used to access the portal.

  • Authorization string Required

    JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"

    Default value is Bearer eyJ0eXAiO....

  • X-Correlation-Id string(UUID)

    This header is optional and by setting it you can correlate the audit logs made by this request.

Path parameters

Query parameters

  • resellerId string(uuid)

    The id of the reseller. Should not be passed if a reseller performs the request. A CSP can set the id of a reseller to add a provider instance between that reseller and a customer.

application/json

Body

The request with the information of the provider instance to add to the customer.

  • providerInstanceId string(uuid) Required

    The GUID identifier for the provider instance.

  • providerCustomerData string | null Required

    The provider specific data for this customer. For a microsoft provider instance the json object needs the following properties:

    • Domain (Example: TestDomain)
    • CredentialsEmail (Example: test@email.com)
    • AcceptedMCA (Example: true)
    • AgreementDate (Example: 2022-12-28T00:00:00Z)
    • KeepPrimaryInformation (Example: true)
    • FirstName (Example: Test)
    • LastName (Example: Test)
    • Email (Example: test@email.com)
    • Phone (Example: 921231231)
    • DefaultCulture (Example: en-US)
    • Language (Example: en)
    • AssociatedPartnerId (Example: 6234552)
    • Qualifications (Example: [])
    • EnableGDAP (Example: true)
  • margin object Required

    This value object contains the price margin for this entity.

    Additional properties are NOT allowed.

    Hide margin attribute Show margin attribute object
    • marginRule object Required

      The margin rule applied. Possible values: Markup, Margin, SplitMargin or ErpMinusDiscount

      Additional properties are NOT allowed.

  • offerTypeMargins object | null

    Contains as key the name of the offer type and as value the price margin applied to each offer type for this specific provider instance. Price margins applied at the offer type level will override the price margin applied at the provider instance level. If no price margin is applied to a specific offer type of this provider instance then it will not be in the dictionary. This dictionary is optional.

    Hide offerTypeMargins attribute Show offerTypeMargins attribute object | null
    • * object Additional properties

      This value object contains the price margin for this entity.

      Additional properties are NOT allowed.

      Hide * attribute Show * attribute object
      • marginRule object Required

        The margin rule applied. Possible values: Markup, Margin, SplitMargin or ErpMinusDiscount

        Additional properties are NOT allowed.

Responses

  • Created

  • Bad Request

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object
      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object
      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object
      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

  • Unauthorized

  • Forbidden

  • Not Found

  • Internal Server Error

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object
      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object
      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object
      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

POST /v1/Customers/{customerId}/provider-instances
curl \
 -X POST https://app-cloudcockpitapi-prod-01.azurewebsites.net/v1/Customers/{customerId}/provider-instances \
 -H "Content-Type: application/json" \
 -H "X-Tenant: portal.cloudcockpit.com" \
 -H "Authorization: Bearer eyJ0eXAiO..." \
 -H "X-Correlation-Id: string" \
 -d '{"providerInstanceId":"string","providerCustomerData":"string","margin":{"marginRule":{}},"offerTypeMargins":{"Value":{"license":{"Value":10,"MarginRule":{"Name":"markup"}}}}}'
Request examples
# Headers
X-Tenant: portal.cloudcockpit.com
Authorization: Bearer eyJ0eXAiO...
X-Correlation-Id: string

# Payload
{
  "providerInstanceId": "string",
  "providerCustomerData": "string",
  "margin": {
    "marginRule": {}
  },
  "offerTypeMargins": {
    "Value": {
      "license": {
        "Value": 10,
        "MarginRule": {
          "Name": "markup"
        }
      }
    }
  }
}
Response examples (201)
string
Response examples (201)
string
Response examples (400)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (400)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (500)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (500)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}