Sections

Sections

Returns a section from the system by its ID.

This method will look up a section by the specified ID and return it back.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the section to return.

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned.

consistentRead
string

Indicates the API should force a consistent read on the data source.

Responses
200The section was retrieved successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The section could not be found.
429Limit exceeded... unable to retrieve section based on tenant limits.
500General server error.
get/sections/{tenantId}/{id}
Request samples
curl -i -X GET \
  'https://membership.api.rhythmsoftware.com/sections/:tenantId/:id?fields=string&consistentRead=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "type_id": "string",
  • "description": "string",
  • "enable_dues": true,
  • "hide_from_portal": true,
  • "restrict_membership_types": true,
  • "allowed_membership_type_ids": [
    ],
  • "enable_new_member_email": true,
  • "new_member_email": {
    },
  • "is_active": true,
  • "custom_field_values": [
    ],
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_directive": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { }
}

Updates a section with the specified ID.

This method will update an existing section with the specified ID.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the section to update.

Request Body schema: application/json

The updated section that will be saved.

id
required
string (ID) /^[\w|-]+$/

The unique, string identifier of this section

name
required
string (Name)

The name of the section

type_id
required
string (Type)

The type of section

description
string (Description)

A description of the section

enable_dues
boolean (Enable Dues)
hide_from_portal
boolean (Hide From Portal)

Whether or not this section is displayed in the portal

restrict_membership_types
boolean (Restrict Membership Types)

When set, only certain membership types can join this section

allowed_membership_type_ids
required
Array of strings (Allowed Membership Types) non-empty

The ids of membership types that are allowed to join this chapter

enable_new_member_email
boolean (Enable New Member Email)

Allow for new members to receive an email when they join this section

required
object (New Member Email)

The new member email

is_active
boolean (Is Active)

Whether this is an active section

Array of objects (Custom Field Values)
sys_deleted_by_id
string (Sys Deleted By)

The ID of the user that deleted (or last tried to delete) this object

sys_version
number <float> (Sys Version)

A number representing the version of this record in the database

sys_created_at
required
string <date-time> (Sys Created At)

The date/time that this record was created, expressed in ISO-8601 date format

sys_last_modified_at
required
string <date-time> (Sys Last Modified At)

The date/time that this record record was last modified, expressed in ISO-8601 date format

sys_created_by_id
required
string (Sys Created By)

The ID of the user that created this record

sys_last_modified_by_id
required
string (Sys Last Modified By)

The ID of the user that last modified this record

sys_external_id
string (Sys External)

The ID that a record has from an external system or data import

sys_locked
boolean (Sys Locked)

If set, this record is locked and cannot be changed via the API

sys_bulk_load_pk
string (Sys Bulk Load Pk)

If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key

sys_bulk_load_at
string (Sys Bulk Load At)

If this record was loaded via bulk, the timestamp when the record was processed

sys_bulk_load_id
string (Sys Bulk Load)

If this record was loaded via bulk, the ID of the bulk load process

sys_bulk_load_record_no
number <float> (Sys Bulk Load Record No)

If this record was loaded via bulk, the record number in the source file

sys_bulk_load_source_file
string (Sys Bulk Load Source File)

If this record was loaded via bulk, the source file

sys_directive
string (Sys Directive)

Means for passing directive information into an object processing logic

sys_snapshot_base_version
number <float> (Sys Snapshot Base Version)

The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox

sys_configuration_snapshot_id
string (Sys Configuration Snapshot)

If a snapshot was restored/applies to this record, the ID of the snapshot

sys_last_security_context
object (Sys Last Security Context)

The security context of the last insert, modify, or delete performed on this item

Responses
200The section was updated successfully.
400The section supplied was not valid.
401Unauthorized.
403Forbidden.
404The section could not be found.
409The section could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to retrieve section based on tenant limits.
500General server error.
put/sections/{tenantId}/{id}
Request samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "type_id": "string",
  • "description": "string",
  • "enable_dues": true,
  • "hide_from_portal": true,
  • "restrict_membership_types": true,
  • "allowed_membership_type_ids": [
    ],
  • "enable_new_member_email": true,
  • "new_member_email": {
    },
  • "is_active": true,
  • "custom_field_values": [
    ],
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_directive": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { }
}
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "type_id": "string",
  • "description": "string",
  • "enable_dues": true,
  • "hide_from_portal": true,
  • "restrict_membership_types": true,
  • "allowed_membership_type_ids": [
    ],
  • "enable_new_member_email": true,
  • "new_member_email": {
    },
  • "is_active": true,
  • "custom_field_values": [
    ],
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_directive": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { }
}

Partially updates a section with the specified ID.

This method will patch an existing section with the specified ID, using the HTTP PATCH specification.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the section to patch.

Request Body schema: application/json

The patch directives conforming to RFC 6902.

Array
op
required
string (Op)

The operation

Enum: "add" "remove" "replace" "move" "copy" "test"
path
required
string (Path)

The JSON path

value
string (Value)

The updated value

Responses
200The section was patched successfully.
400The JSON patch directive you supplied was not valid.
401Unauthorized.
403Forbidden.
404The section could not be found.
409The section could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to retrieve section based on tenant limits.
500General server error.
patch/sections/{tenantId}/{id}
Request samples
application/json
[
  • {
    }
]
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "type_id": "string",
  • "description": "string",
  • "enable_dues": true,
  • "hide_from_portal": true,
  • "restrict_membership_types": true,
  • "allowed_membership_type_ids": [
    ],
  • "enable_new_member_email": true,
  • "new_member_email": {
    },
  • "is_active": true,
  • "custom_field_values": [
    ],
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_directive": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { }
}

Returns a section from the system by its ID.

This method will delete a section with the specified ID.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the section to delete.

Responses
200The section was deleted successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The section could not be found.
409The section could not be deleted because other objects refers to/depends on this one.
429Limit exceeded... unable to delete section based on tenant limits.
500General server error.
delete/sections/{tenantId}/{id}
Request samples
curl -i -X DELETE \
  https://membership.api.rhythmsoftware.com/sections/:tenantId/:id \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
"string"

Searches for sections using predefined parameters

Searches for sections using predefined parameters

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

query Parameters
exclusiveStartKey
string

The start key for the search, for paging support

fieldsToReturn
string

The fields that you want to retrieve; if omitted, the entire object is returned

Request Body schema: application/json

The section that you would like to be saved.

id
Array of strings (ID)

IDs to search

type_id
Array of strings (Type)

Types to search

name
string (Name)
is_active
Array of booleans (Is Active)
Responses
200The section search was saved successfully.
400The section you supplied was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
409The section could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to add section based on tenant limits.
500General server error.
post/sections/{tenantId}/search
Request samples
application/json
{
  • "id": [
    ],
  • "type_id": [
    ],
  • "name": "string",
  • "is_active": [
    ]
}
Response samples
application/json
{
  • "Items": [
    ],
  • "LastEvaluatedKey": "string"
}

Returns a list of sections for a given membership package

Returns a list of sections for a given membership package

Request
Security:
path Parameters
tenantId
required
string

The tenant

membershipPackageId
required
string

The membership package to describe sections

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized.
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/sections/{tenantId}/portal/describeSections/{membershipPackageId}
Request samples
curl -i -X GET \
  https://membership.api.rhythmsoftware.com/sections/:tenantId/portal/describeSections/:membershipPackageId \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
[
  • {
    }
]

Returns a list of sections for a given membership package

Returns a list of sections for a given membership package

Request
Security:
path Parameters
tenantId
required
string

The tenant

membershipPackageId
required
string

The membership package to describe sections

memberType
required
string

The membership package to describe sections

contactOrOrganizationId
required
string

The membership package to describe sections

Responses
200The records were retrieved successfully
400The request was not valid.
401Unauthorized.
403Forbidden
404Unable to locate records
429Limit exceeded... unable to retrieve records based on tenant limits.
500General server error
get/sections/{tenantId}/portal/describeSections/{membershipPackageId}/{memberType}/{contactOrOrganizationId}
Request samples
curl -i -X GET \
  https://membership.api.rhythmsoftware.com/sections/:tenantId/portal/describeSections/:membershipPackageId/:memberType/:contactOrOrganizationId \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
[
  • {
    }
]

Creates a new section record that does not already exist.

This method will auto-generate an ID and create a new section. If an ID is specified for the section, an error will be thrown.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

Request Body schema: application/json

The section that you would like to be saved.

id
required
string (ID) /^[\w|-]+$/

The unique, string identifier of this section

name
required
string (Name)

The name of the section

type_id
required
string (Type)

The type of section

description
string (Description)

A description of the section

enable_dues
boolean (Enable Dues)
hide_from_portal
boolean (Hide From Portal)

Whether or not this section is displayed in the portal

restrict_membership_types
boolean (Restrict Membership Types)

When set, only certain membership types can join this section

allowed_membership_type_ids
required
Array of strings (Allowed Membership Types) non-empty

The ids of membership types that are allowed to join this chapter

enable_new_member_email
boolean (Enable New Member Email)

Allow for new members to receive an email when they join this section

required
object (New Member Email)

The new member email

is_active
boolean (Is Active)

Whether this is an active section

Array of objects (Custom Field Values)
sys_deleted_by_id
string (Sys Deleted By)

The ID of the user that deleted (or last tried to delete) this object

sys_version
number <float> (Sys Version)

A number representing the version of this record in the database

sys_created_at
required
string <date-time> (Sys Created At)

The date/time that this record was created, expressed in ISO-8601 date format

sys_last_modified_at
required
string <date-time> (Sys Last Modified At)

The date/time that this record record was last modified, expressed in ISO-8601 date format

sys_created_by_id
required
string (Sys Created By)

The ID of the user that created this record

sys_last_modified_by_id
required
string (Sys Last Modified By)

The ID of the user that last modified this record

sys_external_id
string (Sys External)

The ID that a record has from an external system or data import

sys_locked
boolean (Sys Locked)

If set, this record is locked and cannot be changed via the API

sys_bulk_load_pk
string (Sys Bulk Load Pk)

If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key

sys_bulk_load_at
string (Sys Bulk Load At)

If this record was loaded via bulk, the timestamp when the record was processed

sys_bulk_load_id
string (Sys Bulk Load)

If this record was loaded via bulk, the ID of the bulk load process

sys_bulk_load_record_no
number <float> (Sys Bulk Load Record No)

If this record was loaded via bulk, the record number in the source file

sys_bulk_load_source_file
string (Sys Bulk Load Source File)

If this record was loaded via bulk, the source file

sys_directive
string (Sys Directive)

Means for passing directive information into an object processing logic

sys_snapshot_base_version
number <float> (Sys Snapshot Base Version)

The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox

sys_configuration_snapshot_id
string (Sys Configuration Snapshot)

If a snapshot was restored/applies to this record, the ID of the snapshot

sys_last_security_context
object (Sys Last Security Context)

The security context of the last insert, modify, or delete performed on this item

Responses
200The section was saved successfully.
400The section you supplied was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
409The section could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to add section based on tenant limits.
500General server error.
post/sections/{tenantId}
Request samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "type_id": "string",
  • "description": "string",
  • "enable_dues": true,
  • "hide_from_portal": true,
  • "restrict_membership_types": true,
  • "allowed_membership_type_ids": [
    ],
  • "enable_new_member_email": true,
  • "new_member_email": {
    },
  • "is_active": true,
  • "custom_field_values": [
    ],
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_directive": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { }
}
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "type_id": "string",
  • "description": "string",
  • "enable_dues": true,
  • "hide_from_portal": true,
  • "restrict_membership_types": true,
  • "allowed_membership_type_ids": [
    ],
  • "enable_new_member_email": true,
  • "new_member_email": {
    },
  • "is_active": true,
  • "custom_field_values": [
    ],
  • "sys_deleted_by_id": "string",
  • "sys_version": 0,
  • "sys_created_at": "2019-08-24T14:15:22Z",
  • "sys_last_modified_at": "2019-08-24T14:15:22Z",
  • "sys_created_by_id": "string",
  • "sys_last_modified_by_id": "string",
  • "sys_external_id": "string",
  • "sys_locked": true,
  • "sys_bulk_load_pk": "string",
  • "sys_bulk_load_at": "string",
  • "sys_bulk_load_id": "string",
  • "sys_bulk_load_record_no": 0,
  • "sys_bulk_load_source_file": "string",
  • "sys_directive": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { }
}

Gets all of the sections in the system.

This method will scan all sections and and return them to the caller.

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

query Parameters
fields
string

The fields that you want to retrieve; if omitted, the entire object is returned.

exclusiveStartKey
string

The start key, if you're making a subsequent request

Responses
200The sectionswere retrieved successfully.
400The request was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
429Limit exceeded... unable to add contact role based on tenant limits.
500General server error.
get/sections/{tenantId}
Request samples
curl -i -X GET \
  'https://membership.api.rhythmsoftware.com/sections/:tenantId?fields=string&exclusiveStartKey=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
[
  • {
    }
]