Directories

Directories

Creates a new directory record that does not already exist.

This method will auto-generate an ID and create a new directory. If an ID is specified for the directory, 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 directory that you would like to be saved.

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

The unique, string identifier of this directory

name
required
string (Name)

The name of the directory

is_public
boolean (Is Public)

If true, this is a public directory that can be accessed without security

display_mode
string (Display Mode)

The way that the directory should be displayed

Enum: "search" "list"
required
Array of objects non-empty

The fields in the directory that are displayed as search criteria

additional_fields
Array of strings (Additional Fields)

These are additional fields that should be in the directory query, which will be available in the search results

enable_custom_search_results_template
boolean (Enable Custom Search Results Template)

If set, a custom search results template is displayed

custom_search_results_template
required
string (Custom Search Results Template)
directory_entry_mode
string (Directory Entry Mode)
Enum: "do not show" "use default" "custom"
custom_directory_entry_template
required
string (Custom Directory Entry Template)
enable_radius_search
boolean (Enable Radius Search)

If true, the user can search across zip code radius

required
object (Radius Search Options)
enable_eligibility_criteria
boolean (Enable Eligibility Criteria)

If set, only certain people can access this directory

required
object (Eligibility Criteria)

The criteria to use

enable_messaging
boolean (Enable Messaging)

When true, users are able to contact other users through the directory

enable_query_filter
boolean (Enable Query Filter)

If set to true, the directory can display a subset of records based on the provided filter. If false, the default filter is used

query_filter_rules
required
object (Query Filter Rules)

The conditions to use to filter the directory

enable_query_expression_filter
boolean (Enable Query Expression Filter)

If set to true, an expression can be used to further filter the query

query_filter_expression
required
string (Query Filter Expression)

The expression to use to filter the directory

enable_custom_sorting
boolean (Enable Custom Sorting)

If true, the directory results will be sorted differently that the query

required
Array of objects non-empty
page_size
number <float> (Page Size) [ 1 .. 50 ]

The page size, used for server side page and to combat scraping attacks

refresh_period
number <float> (Refresh Period) >= 5

The period of time (in minutes) after which the directory should refresh it self

is_active
boolean (Is Active)

Whether or not this directory is active

show_downstream_members
boolean (Show Downstream Members)

If true, downstream members are included in directory entries

required
object (Downstream Member Options)
type
required
string (Type)

The type of members being queried

Enum: "principal" "downstream" "all" "custom"
custom_query_type_id
required
string (Custom Query Type)
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_last_bulk_data_operation_id
string (Sys Last Bulk Data Operation)

If this record was last touched by a bulk data operation, the ID of that operation

sys_last_bulk_data_operation_sys_version
string (Sys Last Bulk Data Operation Sys Version)

If this record was last touched by a bulk data operation, the sys_version at the time of that operation

sys_directive
string (Sys Directive)

Means for passing directive information into an object processing logic

sys_calculated_field_error
string (Sys Calculated Field Error)

The error associated with the calculated field

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_has_files_in_s3
boolean (Sys Has Files In S3)

If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion

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

Array of objects
Responses
200The directory was saved successfully.
400The directory you supplied was invalid.
401Unauthorized.
403Forbidden.
404The resource could not be found
409The directory could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to add directory based on tenant limits.
500General server error.
post/directories/{tenantId}
Request samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "is_public": true,
  • "display_mode": "search",
  • "searchable_fields": [
    ],
  • "additional_fields": [
    ],
  • "enable_custom_search_results_template": true,
  • "custom_search_results_template": "string",
  • "directory_entry_mode": "do not show",
  • "custom_directory_entry_template": "string",
  • "enable_radius_search": true,
  • "radius_search_options": {
    },
  • "enable_eligibility_criteria": true,
  • "eligibility_criteria": {
    },
  • "enable_messaging": true,
  • "enable_query_filter": true,
  • "query_filter_rules": { },
  • "enable_query_expression_filter": true,
  • "query_filter_expression": "string",
  • "enable_custom_sorting": true,
  • "custom_sort_fields": [
    ],
  • "page_size": 1,
  • "refresh_period": 5,
  • "is_active": true,
  • "show_downstream_members": true,
  • "downstream_member_options": {
    },
  • "type": "principal",
  • "custom_query_type_id": "string",
  • "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_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "is_public": true,
  • "display_mode": "search",
  • "searchable_fields": [
    ],
  • "additional_fields": [
    ],
  • "enable_custom_search_results_template": true,
  • "custom_search_results_template": "string",
  • "directory_entry_mode": "do not show",
  • "custom_directory_entry_template": "string",
  • "enable_radius_search": true,
  • "radius_search_options": {
    },
  • "enable_eligibility_criteria": true,
  • "eligibility_criteria": {
    },
  • "enable_messaging": true,
  • "enable_query_filter": true,
  • "query_filter_rules": { },
  • "enable_query_expression_filter": true,
  • "query_filter_expression": "string",
  • "enable_custom_sorting": true,
  • "custom_sort_fields": [
    ],
  • "page_size": 1,
  • "refresh_period": 5,
  • "is_active": true,
  • "show_downstream_members": true,
  • "downstream_member_options": {
    },
  • "type": "principal",
  • "custom_query_type_id": "string",
  • "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_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Gets all of the directories in the system.

This method will scan all directories 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 directorieswere 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/directories/{tenantId}
Request samples
curl -i -X GET \
  'https://membership.api.756794052567.rhythmsoftware.com/directories/:tenantId?fields=string&exclusiveStartKey=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
[
  • {
    }
]

Returns a directory from the system by its ID.

This method will look up a directory 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 directory 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 directory was retrieved successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The directory could not be found.
429Limit exceeded... unable to retrieve directory based on tenant limits.
500General server error.
get/directories/{tenantId}/{id}
Request samples
curl -i -X GET \
  'https://membership.api.756794052567.rhythmsoftware.com/directories/:tenantId/:id?fields=string&consistentRead=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "is_public": true,
  • "display_mode": "search",
  • "searchable_fields": [
    ],
  • "additional_fields": [
    ],
  • "enable_custom_search_results_template": true,
  • "custom_search_results_template": "string",
  • "directory_entry_mode": "do not show",
  • "custom_directory_entry_template": "string",
  • "enable_radius_search": true,
  • "radius_search_options": {
    },
  • "enable_eligibility_criteria": true,
  • "eligibility_criteria": {
    },
  • "enable_messaging": true,
  • "enable_query_filter": true,
  • "query_filter_rules": { },
  • "enable_query_expression_filter": true,
  • "query_filter_expression": "string",
  • "enable_custom_sorting": true,
  • "custom_sort_fields": [
    ],
  • "page_size": 1,
  • "refresh_period": 5,
  • "is_active": true,
  • "show_downstream_members": true,
  • "downstream_member_options": {
    },
  • "type": "principal",
  • "custom_query_type_id": "string",
  • "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_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Updates a directory with the specified ID.

This method will update an existing directory 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 directory to update.

Request Body schema: application/json

The updated directory that will be saved.

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

The unique, string identifier of this directory

name
required
string (Name)

The name of the directory

is_public
boolean (Is Public)

If true, this is a public directory that can be accessed without security

display_mode
string (Display Mode)

The way that the directory should be displayed

Enum: "search" "list"
required
Array of objects non-empty

The fields in the directory that are displayed as search criteria

additional_fields
Array of strings (Additional Fields)

These are additional fields that should be in the directory query, which will be available in the search results

enable_custom_search_results_template
boolean (Enable Custom Search Results Template)

If set, a custom search results template is displayed

custom_search_results_template
required
string (Custom Search Results Template)
directory_entry_mode
string (Directory Entry Mode)
Enum: "do not show" "use default" "custom"
custom_directory_entry_template
required
string (Custom Directory Entry Template)
enable_radius_search
boolean (Enable Radius Search)

If true, the user can search across zip code radius

required
object (Radius Search Options)
enable_eligibility_criteria
boolean (Enable Eligibility Criteria)

If set, only certain people can access this directory

required
object (Eligibility Criteria)

The criteria to use

enable_messaging
boolean (Enable Messaging)

When true, users are able to contact other users through the directory

enable_query_filter
boolean (Enable Query Filter)

If set to true, the directory can display a subset of records based on the provided filter. If false, the default filter is used

query_filter_rules
required
object (Query Filter Rules)

The conditions to use to filter the directory

enable_query_expression_filter
boolean (Enable Query Expression Filter)

If set to true, an expression can be used to further filter the query

query_filter_expression
required
string (Query Filter Expression)

The expression to use to filter the directory

enable_custom_sorting
boolean (Enable Custom Sorting)

If true, the directory results will be sorted differently that the query

required
Array of objects non-empty
page_size
number <float> (Page Size) [ 1 .. 50 ]

The page size, used for server side page and to combat scraping attacks

refresh_period
number <float> (Refresh Period) >= 5

The period of time (in minutes) after which the directory should refresh it self

is_active
boolean (Is Active)

Whether or not this directory is active

show_downstream_members
boolean (Show Downstream Members)

If true, downstream members are included in directory entries

required
object (Downstream Member Options)
type
required
string (Type)

The type of members being queried

Enum: "principal" "downstream" "all" "custom"
custom_query_type_id
required
string (Custom Query Type)
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_last_bulk_data_operation_id
string (Sys Last Bulk Data Operation)

If this record was last touched by a bulk data operation, the ID of that operation

sys_last_bulk_data_operation_sys_version
string (Sys Last Bulk Data Operation Sys Version)

If this record was last touched by a bulk data operation, the sys_version at the time of that operation

sys_directive
string (Sys Directive)

Means for passing directive information into an object processing logic

sys_calculated_field_error
string (Sys Calculated Field Error)

The error associated with the calculated field

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_has_files_in_s3
boolean (Sys Has Files In S3)

If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion

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

Array of objects
Responses
200The directory was updated successfully.
400The directory supplied was not valid.
401Unauthorized.
403Forbidden.
404The directory could not be found.
409The directory could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to retrieve directory based on tenant limits.
500General server error.
put/directories/{tenantId}/{id}
Request samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "is_public": true,
  • "display_mode": "search",
  • "searchable_fields": [
    ],
  • "additional_fields": [
    ],
  • "enable_custom_search_results_template": true,
  • "custom_search_results_template": "string",
  • "directory_entry_mode": "do not show",
  • "custom_directory_entry_template": "string",
  • "enable_radius_search": true,
  • "radius_search_options": {
    },
  • "enable_eligibility_criteria": true,
  • "eligibility_criteria": {
    },
  • "enable_messaging": true,
  • "enable_query_filter": true,
  • "query_filter_rules": { },
  • "enable_query_expression_filter": true,
  • "query_filter_expression": "string",
  • "enable_custom_sorting": true,
  • "custom_sort_fields": [
    ],
  • "page_size": 1,
  • "refresh_period": 5,
  • "is_active": true,
  • "show_downstream_members": true,
  • "downstream_member_options": {
    },
  • "type": "principal",
  • "custom_query_type_id": "string",
  • "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_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "is_public": true,
  • "display_mode": "search",
  • "searchable_fields": [
    ],
  • "additional_fields": [
    ],
  • "enable_custom_search_results_template": true,
  • "custom_search_results_template": "string",
  • "directory_entry_mode": "do not show",
  • "custom_directory_entry_template": "string",
  • "enable_radius_search": true,
  • "radius_search_options": {
    },
  • "enable_eligibility_criteria": true,
  • "eligibility_criteria": {
    },
  • "enable_messaging": true,
  • "enable_query_filter": true,
  • "query_filter_rules": { },
  • "enable_query_expression_filter": true,
  • "query_filter_expression": "string",
  • "enable_custom_sorting": true,
  • "custom_sort_fields": [
    ],
  • "page_size": 1,
  • "refresh_period": 5,
  • "is_active": true,
  • "show_downstream_members": true,
  • "downstream_member_options": {
    },
  • "type": "principal",
  • "custom_query_type_id": "string",
  • "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_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Partially updates a directory with the specified ID.

This method will patch an existing directory 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 directory 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 directory was patched successfully.
400The JSON patch directive you supplied was not valid.
401Unauthorized.
403Forbidden.
404The directory could not be found.
409The directory could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to retrieve directory based on tenant limits.
500General server error.
patch/directories/{tenantId}/{id}
Request samples
application/json
[
  • {
    }
]
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "is_public": true,
  • "display_mode": "search",
  • "searchable_fields": [
    ],
  • "additional_fields": [
    ],
  • "enable_custom_search_results_template": true,
  • "custom_search_results_template": "string",
  • "directory_entry_mode": "do not show",
  • "custom_directory_entry_template": "string",
  • "enable_radius_search": true,
  • "radius_search_options": {
    },
  • "enable_eligibility_criteria": true,
  • "eligibility_criteria": {
    },
  • "enable_messaging": true,
  • "enable_query_filter": true,
  • "query_filter_rules": { },
  • "enable_query_expression_filter": true,
  • "query_filter_expression": "string",
  • "enable_custom_sorting": true,
  • "custom_sort_fields": [
    ],
  • "page_size": 1,
  • "refresh_period": 5,
  • "is_active": true,
  • "show_downstream_members": true,
  • "downstream_member_options": {
    },
  • "type": "principal",
  • "custom_query_type_id": "string",
  • "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_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Returns a directory from the system by its ID.

This method will delete a directory 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 directory to delete.

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

Returns a directory from the system by its ID.

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

Request
path Parameters
tenantId
required
string

The id of the tenant being accessed.

id
required
string

The ID of the directory 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 directory was retrieved successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The directory could not be found.
429Limit exceeded... unable to retrieve directory based on tenant limits.
500General server error.
get/directories/{tenantId}/public/{id}
Request samples
curl -i -X GET \
  'https://membership.api.756794052567.rhythmsoftware.com/directories/:tenantId/public/:id?fields=string&consistentRead=string'
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "is_public": true,
  • "display_mode": "search",
  • "searchable_fields": [
    ],
  • "additional_fields": [
    ],
  • "enable_custom_search_results_template": true,
  • "custom_search_results_template": "string",
  • "directory_entry_mode": "do not show",
  • "custom_directory_entry_template": "string",
  • "enable_radius_search": true,
  • "radius_search_options": {
    },
  • "enable_eligibility_criteria": true,
  • "eligibility_criteria": {
    },
  • "enable_messaging": true,
  • "enable_query_filter": true,
  • "query_filter_rules": { },
  • "enable_query_expression_filter": true,
  • "query_filter_expression": "string",
  • "enable_custom_sorting": true,
  • "custom_sort_fields": [
    ],
  • "page_size": 1,
  • "refresh_period": 5,
  • "is_active": true,
  • "show_downstream_members": true,
  • "downstream_member_options": {
    },
  • "type": "principal",
  • "custom_query_type_id": "string",
  • "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_last_bulk_data_operation_id": "string",
  • "sys_last_bulk_data_operation_sys_version": "string",
  • "sys_directive": "string",
  • "sys_calculated_field_error": "string",
  • "sys_snapshot_base_version": 0,
  • "sys_has_files_in_s3": true,
  • "sys_configuration_snapshot_id": "string",
  • "sys_last_security_context": { },
  • "sys_calculated_field_errors": [
    ]
}

Searches the directory

Request
path Parameters
tenantId
required
string

Parameters to the query

id
required
string

directory

Request Body schema: application/json

The query

criteria
object (Criteria)
page
number <float> (Page)

The page being requested

object (Radius Search)
Responses
200The contact was merged successfully.
400The contact supplied was not valid.
401Unauthorized
403Forbidden
404The contact could not be found.
409The contact could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to merge contact based on tenant limits.
500General server error.
post/directories/{tenantId}/public/search/{id}
Request samples
application/json
{
  • "criteria": { },
  • "page": 0,
  • "radius_search": {
    }
}
Response samples
application/json
{
  • "sql": "string",
  • "query": { },
  • "target_service": "string",
  • "fields": [
    ],
  • "totalNumberOfRows": 0,
  • "rows": [
    ]
}

Searches the directory

Request
Security:
path Parameters
tenantId
required
string

Parameters to the query

id
required
string

directory

Request Body schema: application/json

The query

criteria
object (Criteria)
page
number <float> (Page)

The page being requested

object (Radius Search)
Responses
200The contact was merged successfully.
400The contact supplied was not valid.
401Unauthorized
403Forbidden
404The contact could not be found.
409The contact could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to merge contact based on tenant limits.
500General server error.
post/directories/{tenantId}/search/{id}
Request samples
application/json
{
  • "criteria": { },
  • "page": 0,
  • "radius_search": {
    }
}
Response samples
application/json
{
  • "sql": "string",
  • "query": { },
  • "target_service": "string",
  • "fields": [
    ],
  • "totalNumberOfRows": 0,
  • "rows": [
    ]
}

Gets an entry in the directory

Request
path Parameters
tenantId
required
string

Parameters to the query

id
required
string

directory

entryId
required
string

The id of the entry

Responses
200The contact was merged successfully.
400The contact supplied was not valid.
401Unauthorized
403Forbidden
404The contact could not be found.
409The contact could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to merge contact based on tenant limits.
500General server error.
get/directories/{tenantId}/public/entry/{id}/{entryId}
Request samples
curl -i -X GET \
  https://membership.api.756794052567.rhythmsoftware.com/directories/:tenantId/public/entry/:id/:entryId
Response samples
application/json
{ }

Sends a message to an entry in the directory

Request
path Parameters
tenantId
required
string

Parameters to the query

directoryId
required
string

directory

entryId
required
string

The id of the entry

Request Body schema: application/json

The message to send

from
string (From)

From email address

from_name
string (From Name)

From name

reply_to
string (Reply To)

The reply to

subject
required
string (Subject)

The email subject

cc
string (Cc)

Anyone that should be cc'ed on the email

bcc
string (Bcc)

Anyone that should be bcc'ed on the email

body
required
string (Body)

The email body

Responses
200The contact was merged successfully.
400The contact supplied was not valid.
401Unauthorized
403Forbidden
404The contact could not be found.
409The contact could not be saved because it refers to/depends on a non-existent object.
429Limit exceeded... unable to merge contact based on tenant limits.
500General server error.
post/directories/{tenantId}/public/sendMessage/{directoryId}/{entryId}
Request samples
application/json
{
  • "from": "string",
  • "from_name": "string",
  • "reply_to": "string",
  • "subject": "string",
  • "cc": "string",
  • "bcc": "string",
  • "body": "string"
}
Response samples
application/json
{ }

Execute Batch Operations

TAllows you to perform up to 100 parallel patch/delete operations

Request
Security:
path Parameters
tenantId
required
string

The id of the tenant being accessed.

Request Body schema: application/json

The batch request

Array of objects
Responses
200Request completed successfully.
400The request was not valid.
401Unauthorized.
403Forbidden.
404The directory could not be found.
429Limit exceeded... unable to retrieve directory based on tenant limits.
500General server error.
post/directories/{tenantId}/batch
Request samples
application/json
{
  • "operations": [
    ]
}
Response samples
application/json
{
  • "success_count": 0,
  • "error_count": 0,
  • "results": [
    ]
}