Skip to content

Latest commit

 

History

History
613 lines (453 loc) · 25.9 KB

File metadata and controls

613 lines (453 loc) · 25.9 KB

UserSCIM

Overview

The SCIM standard allows for easier cross-domain identity management. This API allows you to manage your account users and SCIM groups (representing Cvent user roles).

Available Operations

GetUserGroups

Gets a paginated list of SCIM groups (representing Cvent user roles) in an account.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using Cvent.SDK.Models.Requests;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

GetUserGroupsRequest req = new GetUserGroupsRequest() {};

var res = await sdk.UserSCIM.GetUserGroupsAsync(req);

// handle response

Parameters

Parameter Type Required Description
request GetUserGroupsRequest ✔️ The request object to use for the request.

Response

GetUserGroupsResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 400, 401, 403, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

GetResourceTypes

Gets a list of resource types.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

var res = await sdk.UserSCIM.GetResourceTypesAsync();

// handle response

Response

GetResourceTypesResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 401, 403, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

GetResourceType

Gets the details of a single resource type.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using Cvent.SDK.Models.Requests;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

GetResourceTypeRequest req = new GetResourceTypeRequest() {
    Id = "User",
};

var res = await sdk.UserSCIM.GetResourceTypeAsync(req);

// handle response

Parameters

Parameter Type Required Description
request GetResourceTypeRequest ✔️ The request object to use for the request.

Response

GetResourceTypeResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 400, 401, 403, 404, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

GetSchemas

Gets the paginated list of user schemas and its extension models representing the user and SCIM groups (representing Cvent user roles).

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

var res = await sdk.UserSCIM.GetSchemasAsync();

// handle response

Response

GetSchemasResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 401, 403, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

GetSchema

Gets the details of a user schema and its extension models representing the user and SCIM groups (representing Cvent user roles).

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using Cvent.SDK.Models.Requests;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

GetSchemaRequest req = new GetSchemaRequest() {
    Id = "urn:ietf:params:scim:schemas:core:2.0:User",
};

var res = await sdk.UserSCIM.GetSchemaAsync(req);

// handle response

Parameters

Parameter Type Required Description
request GetSchemaRequest ✔️ The request object to use for the request.

Response

GetSchemaResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 400, 401, 403, 404, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

GetServiceProviderConfig

Gets Cvent's configurations of SCIM.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

var res = await sdk.UserSCIM.GetServiceProviderConfigAsync();

// handle response

Response

GetServiceProviderConfigResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 401, 403, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

CreateUser

Creates a new user. For account users, the email address will initially be unverified. To verify it, please click on the link provided in the email sent to your email address.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using System.Collections.Generic;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

UserInput req = new UserInput() {
    Name = new NameJson() {
        GivenName = "Mike",
        FamilyName = "Stuart",
        MiddleName = "A",
        HonorificPrefix = "Mr.",
    },
    UserName = "aMike@test.com",
    Emails = new List<EmailJson1>() {},
    Title = "Vice President",
    PhoneNumbers = new List<PhoneNumberJson1>() {
        new PhoneNumberJson1() {
            Type = PhoneTypeJson.Work,
            Value = "+911234567890",
        },
    },
    Addresses = new List<AddressJson5>() {
        new AddressJson5() {
            Type = AddressTypeJson1.Work,
            StreetAddress = "100 Universal City Plaza",
            Locality = "Hollywood",
            Region = "CA",
            PostalCode = "91608",
            Country = "USA",
            Primary = true,
        },
    },
    UserType = UserTypeJson.PlannerAccountUser,
    Locale = "en-US",
    Groups = new List<GroupJson>() {},
    UrnIetfParamsScimSchemasExtensionEnterprise20User = new UserEnterpriseExtensionJson() {
        FederatedId = "AKJU783UP",
        Company = "Cvent",
        WorkFax = "+1123456",
        HomeFax = "+1123456",
        Pager = "+1123456",
    },
};

var res = await sdk.UserSCIM.CreateUserAsync(req);

// handle response

Parameters

Parameter Type Required Description
request UserInput ✔️ The request object to use for the request.

Response

CreateUserResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 400, 401, 403, 409, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

ListUsers

Gets a list of users.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using Cvent.SDK.Models.Requests;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

ListUsersRequest req = new ListUsersRequest() {
    Filter = "userName eq 'john@example.com' or userName eq 'Matt@example.com'",
};

var res = await sdk.UserSCIM.ListUsersAsync(req);

// handle response

Parameters

Parameter Type Required Description
request ListUsersRequest ✔️ The request object to use for the request.

Response

ListUsersResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 400, 401, 403, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

GetUser

Gets the details of a single user.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using Cvent.SDK.Models.Requests;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

GetUserRequest req = new GetUserRequest() {
    Id = "id1",
};

var res = await sdk.UserSCIM.GetUserAsync(req);

// handle response

Parameters

Parameter Type Required Description
request GetUserRequest ✔️ The request object to use for the request.

Response

GetUserResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 400, 401, 403, 404, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

UpdateUser

Updates a user. In case of an account user, if the email address field is updated then please verify the new email address using the link received in the verification email.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using Cvent.SDK.Models.Requests;
using System.Collections.Generic;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

UpdateUserRequest req = new UpdateUserRequest() {
    Id = "id1",
    User = new UserInput() {
        Name = new NameJson() {
            GivenName = "Mike",
            FamilyName = "Stuart",
            MiddleName = "A",
            HonorificPrefix = "Mr.",
        },
        UserName = "aMike@test.com",
        Emails = new List<EmailJson1>() {},
        Title = "Vice President",
        PhoneNumbers = new List<PhoneNumberJson1>() {
            new PhoneNumberJson1() {
                Type = PhoneTypeJson.Work,
                Value = "+911234567890",
            },
        },
        Addresses = new List<AddressJson5>() {
            new AddressJson5() {
                Type = AddressTypeJson1.Work,
                StreetAddress = "100 Universal City Plaza",
                Locality = "Hollywood",
                Region = "CA",
                PostalCode = "91608",
                Country = "USA",
                Primary = true,
            },
        },
        UserType = UserTypeJson.PlannerAccountUser,
        Locale = "en-US",
        Groups = new List<GroupJson>() {
            new GroupJson() {
                Value = "3b2359a7-4583-40ed-8afd-67e5f15373d3",
                Display = "Admin",
            },
        },
        UrnIetfParamsScimSchemasExtensionEnterprise20User = new UserEnterpriseExtensionJson() {
            FederatedId = "AKJU783UP",
            Company = "Cvent",
            WorkFax = "+1123456",
            HomeFax = "+1123456",
            Pager = "+1123456",
        },
    },
};

var res = await sdk.UserSCIM.UpdateUserAsync(req);

// handle response

Parameters

Parameter Type Required Description
request UpdateUserRequest ✔️ The request object to use for the request.

Response

UpdateUserResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 400, 401, 403, 404, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*

DeleteUser

Deletes a user.

More about OAuth2 authorization code support for administrators <#oauth2-auth-code-planner-admin>

Example Usage

using Cvent.SDK;
using Cvent.SDK.Models.Components;
using Cvent.SDK.Models.Requests;

var sdk = new CventSDK(security: new Security() {
    OAuth2ClientCredentials = new SchemeOAuth2ClientCredentials() {
        ClientID = "<YOUR_CLIENT_ID_HERE>",
        ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
        TokenURL = "<YOUR_TOKEN_URL_HERE>",
        Scopes = "<YOUR_SCOPES_HERE>",
    },
});

DeleteUserRequest req = new DeleteUserRequest() {
    Id = "id1",
};

var res = await sdk.UserSCIM.DeleteUserAsync(req);

// handle response

Parameters

Parameter Type Required Description
request DeleteUserRequest ✔️ The request object to use for the request.

Response

DeleteUserResponse

Errors

Error Type Status Code Content Type
Cvent.SDK.Models.Errors.ErrorResponseJson20 401, 403, 404, 429 application/json
Cvent.SDK.Models.Errors.APIException 4XX, 5XX */*