Organization API
Endpoints
The create customer
endpoint allows you to create a new customer organization account in the cloud platform and approve the created account for purchases.
The get customers
endpoint retrieves a list of all your customer organizations, including the account details, address information, contacts, and custom properties.
The update customer
endpoint allows you to update information on an existing customer organization account in the cloud platform.
The activate customer
endpoint allows you to activate a customer organization platform that was synchornised from a third party vendor.
Get Customers Endpoint
Endpoint to retrieve a list of customers from the reseller platform including all addresses, contacts, and custom properties.
The endpoint for this is: GET /api/v1/customers
Example response (JSON format)
[
{
"customerId": ".....",
"customerName": ".....",
"customerStatus": ".....",
"customerCountry": ".....",
"customerErpOrganizationId": ".....",
"customerRegistrationNumber": ".....",
"customerVatNumber": ".....",
"customerCurrency": ".....",
"customerSegment": ".....",
"customerPrimaryAddress": {
"primaryAddressLine1": ".....",
"primaryAddressLine2": ".....",
"primaryAddressCity": ".....",
"primaryAddressProvince": ".....",
"primaryAddressPostalCode": ".....",
"primaryAddressCountryCode": "....."
},
"customerBillingAddress": {
"billingAddressLine1": ".....",
"billingAddressLine2": ".....",
"billingAddressCity": ".....",
"billingAddressProvince": ".....",
"billingAddressPostalCode": ".....",
"billingAddressCountryCode": "....."
},
"customerPrimaryContact": {
"primaryContactFirstName": ".....",
"primaryContactLastName": ".....",
"primaryContactRole": ".....",
"primaryContactEmail": ".....",
"primaryContactPhone": "....."
},
"customerBillingContact": {
"billingContactFirstName": ".....",
"billingContactLastName": ".....",
"billingContactRole": ".....",
"billingContactEmail": ".....",
"billingContactPhone": "....."
},
"customerAccountManagerContact": {
"accountManagerContactFirstName": ".....",
"accountManagerContactLastName": ".....",
"accountManagerContactRole": ".....",
"accountManagerContactEmail": ".....",
"accountManagerContactPhone": "....."
},
"customerServiceDeskContact": {
"serviceDeskContactFirstName": ".....",
"serviceDeskContactLastName": ".....",
"serviceDeskContactRole": ".....",
"serviceDeskContactEmail": ".....",
"serviceDeskContactPhone": "....."
},
"customerCustomProperties": [
{
"customPropertyName": ".....",
"customPropertyValue": "....."
}
],
"customerIndustries": [
"....."
]
}
]
customers element
Field | Data type | Description |
---|---|---|
customerId | string(UUID) | ID of the customer organization |
customerName | string | Name of the customer organization |
customerStatus | string | Status of the customer organization |
customerCountry | string | Country of the customer organization |
customerErpOrganizationId | string | ERP ID of the customer organization |
customerRegistrationNumber | string | CoC number of the customer organization |
customerVatNumber | string | VAT number of the customer organization |
customerCurrency | string | Currency of the customer organization |
customerSegment | string | Segment of the customer organization |
customerPrimaryAddress | array( | List of primary address details of the customer organization |
customerBillingAddress | array( | List of primary billing address details of the customer organization |
customerPrimaryContact | array( | List of details from the primary contact |
customerBillingContact | array( | List of details from the billing contact |
customerAccountManagerContact | array( | List of details from the account manager contact |
customerServiceDeskContact | array( | List of details from the servicedesk contact |
customerCustomProperties | array( | List of custom properties assigned to the customer organization |
customerIndustries | array( | List of all industries assigned to this customer organization |
customerPrimaryAddresselement
Field | Data type | Description |
---|---|---|
primaryAddressLine1 | string | Primary address of the customer organization including street name and number. |
primaryAddressLine2 | string | Alternative address of the customer organization including street name and number. |
primaryAddressCity | string | City of the customer organization |
primaryAddressProvince | string | Province of the customer organization |
primaryAddressPostalCode | string | PostalCode of the customer organization |
primaryAddressCountryCode | string | CountryCode of the customer organization |
customerBillingAddresselement
Field | Data type | Description |
---|---|---|
billingAddressLine1 | string | Primary billing address of the customer organization including street name and number. |
billingAddressLine2 | string | Alternative billing address of the customer organization including street name and number. |
billingAddressCity | string | City of the billing customer organization |
billingAddressProvince | string | Province of the billing customer organization |
billingAddressPostalCode | string | PostalCode of the billing customer organization |
billingAddressCountryCode | string | CountryCode of the billing customer organization |
customerPrimaryContact element
Field | Data type | Description |
---|---|---|
PrimaryContactFirstName | string | First name of the primary contact |
PrimaryContactLastName | string | Last name of the primary contact |
PrimaryContactRole | string | Role/function title of the primary contact |
PrimaryContactEmail | string | Email address of the primary contact |
PrimaryContactPhone | string | Phone number of the primary contact |
customerBillingContact element
Field | Data type | Description |
---|---|---|
BillingContactFirstName | string | First name of the billing contact |
BillingContactLastName | string | Last name of the billing contact |
BillingContactRole | string | Role/function title of the billing contact |
BillingContactEmail | string | Email address of the billing contact |
BillingContactPhone | string | Phone number of the billing contact |
customerAccountManagerContact element
Field | Data type | Description |
---|---|---|
AccountManagerContactFirstName | string | First name of the account manager contact |
AccountManagerContactLastName | string | Last name of the account manager contact |
AccountManagerContactRole | string | Role/function title of the account manager contact |
AccountManagerContactEmail | string | Email address of the account manager contact |
AccountManagerContactPhone | string | Phone number of the account manager contact |
customerServiceDeskContact element
Field | Data type | Description |
---|---|---|
serviceDeskContactFirstName | string | First name of the service desk contact |
serviceDeskContactLastName | string | Last name of the service desk contact |
serviceDeskContactRole | string | Role/function title of the service desk contact |
serviceDeskContactEmail | string | Email address of the service desk contact |
serviceDeskContactPhone | string | Phone number of the service desk contact |
customerCustomProperties element
Field | Data type | Description |
---|---|---|
customPropertyName | string | Name of the custom property |
customPropertyValue | string | Value contained in the custom property |
Create Customers Endpoint
Endpoint to create a new customer organization account in the cloud platform and approve the created account for purchases.
The endpoint for this is: POST /api/v1/customers
Example request body (JSON format)
{
"customerName": ".....",
"customerShortName": ".....",
"customerErpOrganizationId": ".....",
"customerRegistrationNumber": ".....",
"customerVatNumber": ".....",
"customerCustomProperties": [
{
"customPropertyName": ".....",
"customPropertyValue": "....."
}
],
"customerIndustries": [
"....."
],
"customerCurrency": "....."
"customerPrimaryAddress": {
"primaryAddressLine1": ".....",
"primaryAddressLine2": ".....",
"primaryAddressCity": ".....",
"primaryAddressProvince": ".....",
"primaryAddressPostalCode": ".....",
"primaryAddressCountryCode": "....."
},
"customerBillingAddress": {
"billingAddressLine1": ".....",
"billingAddressLine2": ".....",
"billingAddressCity": ".....",
"billingAddressProvince": ".....",
"billingAddressPostalCode": ".....",
"billingAddressCountryCode": "....."
},
"customerPrimaryContact": {
"primaryContactFirstName": "....."
"primaryContactLastName": ".....",
"primaryContactRole": ".....",
"primaryContactEmail": ".....",
"primaryContactPhone": "....."
},
"customerBillingContact": {
"billingContactFirstName": ".....",
"billingContactLastName": ".....",
"billingContactRole": ".....",
"billingContactEmail": ".....",
"billingContactPhone": "....."
},
"customerAccountManagerContact": {
"accountManagerContactFirstName": ".....",
"accountManagerContactLastName": ".....",
"accountManagerContactRole": ".....",
"accountManagerContactEmail": ".....",
"accountManagerContactPhone": "....."
},
"customerServiceDeskContact": {
"serviceDeskContactFirstName": ".....",
"serviceDeskContactLastName": ".....",
"serviceDeskContactRole": ".....",
"serviceDeskContactEmail": ".....",
"serviceDeskContactPhone": "....."
}
}
The field names match the ones from the GET API. Please refer to the tables above.
The Response is exactly the same as the https://copacocloud.atlassian.net/wiki/spaces/KB/pages/edit-v2/1307803652#Example-response-(JSON-format)
Update Customers Endpoint
Endpoint to update an existing customer organization account in the cloud platform
The endpoint for this is: PUT /api/v1/customers/{customerID}
Example request body (JSON format)
{
"customerName": "string",
"customerShortName": "string",
"customerErpOrganizationId": "string",
"customerRegistrationNumber": "string",
"customerVatNumber": "string",
"customerCustomProperties": [
{
"customPropertyName": "string",
"customPropertyValue": "string"
}
],
"customerIndustries": [
"string"
],
"customerCurrency": "string",
"customerPrimaryAddress": {
"primaryAddressLine1": "string",
"primaryAddressLine2": "string",
"primaryAddressCity": "string",
"primaryAddressProvince": "string",
"primaryAddressPostalCode": "string",
"primaryAddressCountryCode": "string"
},
"customerBillingAddress": {
"billingAddressLine1": "string",
"billingAddressLine2": "string",
"billingAddressCity": "string",
"billingAddressProvince": "string",
"billingAddressPostalCode": "string",
"billingAddressCountryCode": "string"
},
"customerPrimaryContact": {
"primaryContactFirstName": "string",
"primaryContactLastName": "string",
"primaryContactRole": "string",
"primaryContactEmail": "string",
"primaryContactPhone": "string"
},
"customerBillingContact": {
"billingContactFirstName": "string",
"billingContactLastName": "string",
"billingContactRole": "string",
"billingContactEmail": "string",
"billingContactPhone": "string"
},
"customerAccountManagerContact": {
"accountManagerContactFirstName": "string",
"accountManagerContactLastName": "string",
"accountManagerContactRole": "string",
"accountManagerContactEmail": "string",
"accountManagerContactPhone": "string"
},
"customerServiceDeskContact": {
"serviceDeskContactFirstName": "string",
"serviceDeskContactLastName": "string",
"serviceDeskContactRole": "string",
"serviceDeskContactEmail": "string",
"serviceDeskContactPhone": "string"
}
}
The Response is exactly the same as the https://copacocloud.atlassian.net/wiki/spaces/KB/pages/edit-v2/1307803652#Example-response-(JSON-format)
Activate Customers Endpoint
Endpoint to activate a customer organization platform that was synchornised from a third party vendor.
The endpoint for this is: PUT /api/v1/customers/{customerID}/activate