Create Grouping

Create a grouping.

Prerequisites

C#

To create grouping, first create an instance of CrayonApiClient and get the token using CrayonApiClient instance.

Then call Groupings.Create() method to create grouping by passing the token and the instance of Grouping.

var grouping = new Grouping
{
    Name = "Sample Grouping",
    InvoiceProfile = new ObjectReference
    {
        Id = 101,
        Name = "Standard Invoice Profile"
    },
    Organization = new ObjectReference
    {
        Id = 202,
        Name = "Sample Organization"
    },
    CreatedDate = DateTime.UtcNow,
    ModifiedDate = DateTime.UtcNow,
    IsDisabled = false,
    IsRemoved = false,
    InvoiceReference = "INV-00123"
};

var client = new CrayonApiClient("https://api.crayon.com/");
var token = client.Tokens.GetUserToken(clientId, clientSecret, userName, password).GetData().AccessToken;
var result = client.Groupings.Create(token, grouping);

Request

Request Syntax:

Method

Request URI

POST | https://api.crayon.com/api/v1/groupings/

Request Body:

Name

Type

Description

Name

string

The name of the grouping

InvoiceProfile

ObjectReference

Reference to an invoice profile associated with the grouping.

Organization

ObjectReference

Reference to the organization this grouping belongs to.

CreatedDate

DateTime

Date and time when this grouping was created

ModifiedDate

DateTime

Date and time when this grouping was last modified.

IsDisabled

bool

ndicates whether the grouping is currently disabled.

IsRemoved

bool

Indicates if the grouping has been marked as removed.

InvoiceReference

bool

A custom invoice reference number or tag.

Request Headers:

The following HTTP request headers are supported

Header

Type

Description

Authorization

string

Required. The authorization token in the form Bearer <token>.

Accept

string

Specifies the request and response type, “application/json”.

Content-Type

string

Specifies the media type of the resource, “application/json”.

Request Example:

GET $"https://api.crayon.com/api/v1/groupings/{id}"
Accept : application/json
Content-Type: application/json
Authorization : Bearer < Token >

Response

If successful, this method returns a single Grouping resource in the response body.

{
    "InvoiceProfile": {
        "InvoiceAccount": null,
        "Id": 12345,
        "Name": "Invoice Profile"
    },
    "Id": 67890,
    "Name": "Group Name",
    "Organization": {
        "Id": 54321,
        "Name": "Customer"
    },
    "CreatedDate": "2025-01-01T10:00:00.000",
    "ModifiedDate": "2025-01-01T10:00:00.000",
    "IsDisabled": false,
    "IsRemoved": false,
    "InvoiceReference": "Invoice Reference"
}

Response success and error codes:

Each response comes with an HTTP status code that indicates success or failure and additional debugging information. Use a network trace tool to read this code, error type, and additional parameters.

Error Codes

Description

200 Ok

The request has succeeded.

401 Unauthorized

The request requires user authentication. If the request already included Authorization credentials, then the 401 (Unauthorized) status code means that authorization has been refused for those credentials. It is a non-retryable error condition.

500 Internal Server Error

Grouping fetching failed. Indicates that a generic error has occurred on the server.