# Partially updates a application process with the specified ID.

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

Endpoint: PATCH /applicationProcesses/{tenantId}/{id}
Version: v1-2025-04-18
Security: knox-authorizer

## Security:

  - `knox-authorizer` (unknown)
    http bearer JWT

## Path parameters:

  - `tenantId` (string, required)
    The id of the tenant being accessed.

  - `id` (string, required)
    The ID of the application process to patch.

## Request body:

  - `application/json` (unknown)
    The patch directives conforming to RFC 6902.

## Request fields (application/json):

  - `op` (string, required)
    The operation
    Enum: "add", "copy", "move", "remove", "replace", "test"

  - `path` (string, required)
    The JSON path

  - `value` (string)

## Response 200:

  - `200` (unknown)
    The application process was patched successfully.

## Response 200 fields (application/json):

  - `applicable_origins` (array)
    The origin types that are applicable to this process - blank for just principle

  - `application_confirmation_email` (object, required)
    The email to send when the application is received

  - `application_confirmation_email.bcc` (string)
    Anyone that should be bcc'ed on the email

  - `application_confirmation_email.body` (string, required)
    The email body

  - `application_confirmation_email.cc` (string)
    Anyone that should be cc'ed on the email

  - `application_confirmation_email.from` (string)
    From email address

  - `application_confirmation_email.from_name` (string)
    From name

  - `application_confirmation_email.reply_to` (string)
    The reply to

  - `application_confirmation_email.subject` (string, required)
    The email subject

  - `approval_chapter_ids` (array, required)

  - `approval_lambda_function_id` (string, required)

  - `change_options` (object, required)

  - `change_options.change_fee_id` (string, required)
    The product to use when changing information

  - `change_options.prorate_add_on_dues` (boolean)
    If set, if someone creates add on dues, then the system should prorate those dues based on the amount of time left in the membership

  - `change_options.prorate_chapter_dues` (boolean)
    If set, if someone adds a chapter, then the system should prorate those dues based on the amount of time left in the membership

  - `change_options.prorate_section_dues` (boolean)
    If set, if someone adds a section, then the system should prorate those dues based on the amount of time left in the membership

  - `checkout_settings` (object, required)

  - `checkout_settings.allow_customer_to_choose_installment_plan` (boolean)
    If true, the customer can choose their installment plan

  - `checkout_settings.bank_account_id` (string, required)
    The default bank account that the store should use to receive payments

  - `checkout_settings.bill_my_organization_options` (object)

  - `checkout_settings.bill_my_organization_options.billing_address` (string)
    Enum: "do not show", "optional", "required"

  - `checkout_settings.bill_my_organization_options.purchase_order_number` (string)
    Enum: "do not show", "optional", "required"

  - `checkout_settings.bill_my_organization_options.reference_number` (string)
    The reference #

  - `checkout_settings.bill_my_parent_organization_options` (object)

  - `checkout_settings.bill_my_parent_organization_options.billing_address` (string)
    Enum: "do not show", "optional", "required"

  - `checkout_settings.bill_my_parent_organization_options.purchase_order_number` (string)
    Enum: "do not show", "optional", "required"

  - `checkout_settings.bill_my_parent_organization_options.reference_number` (string)
    The reference #

  - `checkout_settings.business_unit_id` (string, required)
    The business unit of the store

  - `checkout_settings.cancellation_fee_product_id` (string)
    The ID of the product used for cancellation fees

  - `checkout_settings.checkout_donation_options` (object)

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options` (object)

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options.allow_user_to_specify_custom_amount` (boolean)
    If set, the user can specify their own custom donation

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options.donation_ask_text` (string)
    The text shown to the user when making the donation

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options.donation_denominations` (array)

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options.donation_information` (string)
    Additional information about the donation

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options.donation_product_id` (string, required)
    The misc product that should be used

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options.override_donation_denominations` (boolean)
    If set, donation denominations are specified here and the defaults are not used

  - `checkout_settings.checkout_donation_options.simple_checkout_donation_options.suggested_donation` (number)
    A suggested donation

  - `checkout_settings.checkout_donation_options.type` (string)
    Enum: "simple"

  - `checkout_settings.credit_card_minimum_range_end` (number)
    If set, the maximum amount for which credit cards can be taken

  - `checkout_settings.credit_card_minimum_range_start` (number)
    If set, the minimum amount for which credit cards can be taken

  - `checkout_settings.credit_card_mode` (string)
    Determines whether or not credit cards are accepted
    Enum: "disabled", "enabled", "range"

  - `checkout_settings.credit_card_processing_fee_mode` (string)
    Determines how credit card processing fees should be handled
    Enum: "charge", "do not charge", "prompt user"

  - `checkout_settings.credit_card_processing_fee_options` (object)

  - `checkout_settings.credit_card_processing_fee_options.fee_percentage` (number, required)
    The fee percentage to charge for credit card processing

  - `checkout_settings.credit_card_processing_fee_options.maximum_fee` (number)
    The maximum amount to charge. If the fee comes out to be MORE than this, than this amount will be charged

  - `checkout_settings.credit_card_processing_fee_options.minimum_fee` (number)
    The minimum amount to charge. If the fee comes out to be less than this, than this amount will be charged

  - `checkout_settings.credit_card_processing_fee_options.product_id` (string, required)
    The misc product to use for the credit card processing

  - `checkout_settings.credit_card_processing_fee_options.prompt_sub_text` (string)
    Additional text that is shown to the user when asking if they want to pay for credit card processing fees. If not set a default will be used

  - `checkout_settings.credit_card_processing_fee_options.prompt_text` (string)
    The checkbox text to show the user when asking if they want to pay for credit card processing fees. If not set a default will be used

  - `checkout_settings.custom_order_preprocessing_options` (object)

  - `checkout_settings.custom_order_preprocessing_options.lambda_function_id` (string, required)
    The custom lambda function to use

  - `checkout_settings.custom_order_pricing_options` (object)

  - `checkout_settings.custom_order_pricing_options.lambda_function_id` (string, required)
    The custom lambda function to use

  - `checkout_settings.disable_electronic_payment_vaulting` (boolean)
    If set, in the portal people are not allowed to save credit cards

  - `checkout_settings.enable_bill_my_organization` (boolean)
    If set, the user has the option to bill their organization

  - `checkout_settings.enable_bill_my_parent_organization` (boolean)
    If set, the user has the option to bill their organization's parent organization

  - `checkout_settings.enable_custom_order_preprocessing` (boolean)
    If set, the order engine will call out to a custom lambda function to process/change the order immediately after bundle expansion

  - `checkout_settings.enable_custom_order_pricing` (boolean)
    If set, the order engine will call out to a custom lambda function to review the order immediately after pricing calculation

  - `checkout_settings.enable_donations_at_checkout` (boolean)
    If selected, users will be prompted to make a donation upon checking out

  - `checkout_settings.enable_electronic_checks` (boolean)
    If set, electronic checks are allowed

  - `checkout_settings.enable_pay_later` (boolean)
    If set, pay later is enabled on this checkout regardless of product settings... if not, the product settings are observed

  - `checkout_settings.enable_payroll_deduction` (boolean)
    If set, payroll deduction is allowed

  - `checkout_settings.enable_split_payments` (boolean)
    If set, users are allowed to split payments

  - `checkout_settings.installment_plan_options` (array)

  - `checkout_settings.invoice_payment_terms_id` (string)
    The payment terms for invoices; if left blank, default is used

  - `checkout_settings.invoice_template_id` (string)
    The template to use for invoices created during this process

  - `checkout_settings.merchant_account_id` (string, required)
    The merchant account that the store should use to receive payments

  - `checkout_settings.pay_later_options` (object)

  - `checkout_settings.pay_later_options.billing_address` (string)
    Enum: "do not show", "optional", "required"

  - `checkout_settings.pay_later_options.purchase_order_number` (string)
    Enum: "do not show", "optional", "required"

  - `checkout_settings.pay_later_options.reference_number` (string)
    The reference #

  - `checkout_settings.restocking_fee_product_id` (string)
    The ID of the product used for restocking fees

  - `checkout_settings.special_instructions` (string)
    Instructions shown to the user

  - `checkout_settings.use_pro_forma_invoices` (boolean)
    Whether to use pro forma invoices when user elects to pay later

  - `contact_form_options` (object, required)

  - `contact_form_options.contact_form_id` (string, required)
    The default contact form to present to the user to verify the contact info before proceeding

  - `contact_form_options.html` (string)
    Text to show on the top of the form

  - `custom_application_generation_logic_options` (object, required)

  - `custom_application_generation_logic_options.lambda_function_id` (string, required)
    The custom lambda function to use

  - `custom_application_pre_processing_lambda_function_id` (string, required)

  - `customer_type` (string, required)
    Enum: "contact", "organization"

  - `description` (string)
    A description of the process to help the user understand whether to choose

  - `display_in_portal` (boolean)
    Whether or not to hide in the portal

  - `display_in_portal_as` (string)
    How to display this process in the portal

  - `display_order` (number)
    The display order

  - `do_not_send_activation_email_until_membership_is_paid` (boolean)
    If true, the confirmation email is sent out when a user completes but does not pay, and an activation email goes out upon payment

  - `do_not_set_default_renewal_package` (boolean)
    If true, do NOT set the default package for renewals, instead forcing them to choose one

  - `eligibility_criteria` (object, required)
    The criteria for eligibility

  - `enable_application_confirmation_email` (boolean)
    Whether or not an email should be sent when the application is received

  - `enable_custom_application_generation_logic` (boolean)
    If set, the application generation logic will call a custom lambda function

  - `enable_custom_application_pre_processing` (boolean)
    If set, custom order generation logic is run

  - `enable_eligibility_criteria` (boolean)
    Should allow eligibility criteria

  - `enable_membership_activation_email` (boolean)
    Whether or not to send an email when the membership is actually activated

  - `enable_order_generation_rules` (boolean)
    Whether order generation rules apply

  - `enable_section_restrictions` (boolean)
    Whether section requirements are enabled for this membership type

  - `form_id` (string)
    The default application form for this process membership

  - `id` (string, required)
    The unique, string identifier of this application process

  - `is_active` (boolean)
    Whether or not this process is active

  - `membership_activation_email` (object, required)
    Email to send once the membership is activated

  - `membership_activation_email.bcc` (string)
    Anyone that should be bcc'ed on the email

  - `membership_activation_email.body` (string, required)
    The email body

  - `membership_activation_email.cc` (string)
    Anyone that should be cc'ed on the email

  - `membership_activation_email.from` (string)
    From email address

  - `membership_activation_email.from_name` (string)
    From name

  - `membership_activation_email.reply_to` (string)
    The reply to

  - `membership_activation_email.subject` (string, required)
    The email subject

  - `membership_package_ids` (array, required)

  - `membership_type_ids` (array, required)

  - `memberships_require_approval` (string)
    Whether or not memberships require approval
    Enum: "always", "based on chapter", "custom", "never"

  - `name` (string, required)
    The name of the application process

  - `order_generation_rules` (array, required)

  - `order_generation_rules.add_on_options` (object)

  - `order_generation_rules.add_on_options.add_ons` (array, required)

  - `order_generation_rules.add_on_options.add_ons.add_on_id` (string, required)
    The add on id to add

  - `order_generation_rules.add_on_options.add_ons.quantity` (number)
    The add on amount

  - `order_generation_rules.add_on_options.add_ons.quantity_calculation_strategy` (string, required)
    Enum: "static value"

  - `order_generation_rules.assign_add_ons` (boolean)

  - `order_generation_rules.assign_package` (boolean)

  - `order_generation_rules.matching_conditions` (object, required)
    The conditions upon which this expiration rule applies. If not set, then this expiration rule always applies

  - `order_generation_rules.matching_conditions.all` (array)

  - `order_generation_rules.matching_conditions.all.all` (object)

  - `order_generation_rules.matching_conditions.all.any` (object)

  - `order_generation_rules.matching_conditions.all.fact` (string)
    The piece of data being examined

  - `order_generation_rules.matching_conditions.all.operator` (string)
    The operator
    Enum: "contains", "containsString", "doesNotContain", "equal", "greaterThan", "greaterThanInclusive", "in", "isBlank", "isNotBlank", "lessThan", "lessThanInclusive", "matchesPatter", "notContainsString", "notEqual", "notIn", "regex"

  - `order_generation_rules.matching_conditions.all.path` (string)
    The path of the value being tested

  - `order_generation_rules.matching_conditions.all.value` (string)

  - `order_generation_rules.matching_conditions.any` (array)

  - `order_generation_rules.matching_conditions.any.all` (object)

  - `order_generation_rules.matching_conditions.any.any` (object)

  - `order_generation_rules.matching_conditions.any.fact` (string)
    The piece of data being examined

  - `order_generation_rules.matching_conditions.any.operator` (string)
    The operator
    Enum: "contains", "containsString", "doesNotContain", "equal", "greaterThan", "greaterThanInclusive", "in", "isBlank", "isNotBlank", "lessThan", "lessThanInclusive", "matchesPatter", "notContainsString", "notEqual", "notIn", "regex"

  - `order_generation_rules.matching_conditions.any.path` (string)
    The path of the value being tested

  - `order_generation_rules.matching_conditions.any.value` (string)

  - `order_generation_rules.name` (string, required)
    A description of the rule

  - `order_generation_rules.package_options` (object)

  - `order_generation_rules.package_options.package_id` (string, required)
    The package id to add

  - `organization_form_options` (object, required)

  - `organization_form_options.html` (string)
    Text to show on the top of the form

  - `organization_form_options.organization_form_id` (string, required)
    The default organization form to present to the user to verify the organization info before proceeding

  - `organization_type_ids` (array, required)

  - `organizational_membership_options` (object, required)

  - `organizational_membership_options.allow_admin_to_modify_add_ons` (boolean)
    If set, membership group admins can add/change add ons

  - `organizational_membership_options.allow_admin_to_modify_chapters` (boolean)
    If set, membership group admins can add/change chapters

  - `organizational_membership_options.allow_admin_to_modify_sections` (boolean)
    If set, membership group admins can add/change sections

  - `organizational_membership_options.quick_add_contact_options` (object, required)
    UI options for how the add org contacts should function

  - `override_checkout_settings` (boolean)
    Whether or not to override POC settings

  - `reinstatement_options` (object, required)

  - `reinstatement_options.calculate_reinstatement_period_using` (string)
    The mechanism to use to calculate the reinstatement period
    Enum: "default", "expiration date", "termination date"

  - `reinstatement_options.reinstatement_period` (number)
    Number of days after termination after which a person can be reinstated - leave blank for an indefinite time period

  - `renewal_options` (object, required)

  - `renewal_options.renewal_window` (number, required)
    The number of days prior to expiration this person is allowed to renew

  - `restrict_membership_packages` (boolean)
    The packages  in this path are restricted

  - `restrict_membership_types` (boolean)
    The membership types in this path are restricted

  - `restrict_organization_types` (boolean)
    Restrict to certain types of organizations

  - `section_restrictions` (object, required)

  - `section_restrictions.maximum_number_of_sections` (number)
    The maximum number of overall sections

  - `section_restrictions.minimum_number_of_sections` (number)
    The minimum number of overall sections

  - `section_restrictions.section_type_restrictions` (array)

  - `section_restrictions.section_type_restrictions.maximum` (number)
    The max # of sections

  - `section_restrictions.section_type_restrictions.minimum` (number)
    The minimum number of sections

  - `section_restrictions.section_type_restrictions.section_type_id` (string)
    The required section type

  - `show_contact_form` (boolean)
    Whether or not to show a contact form

  - `show_organization_form` (boolean)
    Whether or not to show an organization form

  - `sys_bulk_load_at` (string)
    If this record was loaded via bulk, the timestamp when the record was processed

  - `sys_bulk_load_id` (string)
    If this record was loaded via bulk, the ID of the bulk load process

  - `sys_bulk_load_pk` (string)
    If this record was loaded via bulk, the tenant and key of the bulk load process used as a partition key

  - `sys_bulk_load_record_no` (number)
    If this record was loaded via bulk, the record number in the source file

  - `sys_bulk_load_source_file` (string)
    If this record was loaded via bulk, the source file

  - `sys_calculated_field_error` (string)
    The error associated with the calculated field

  - `sys_calculated_field_errors` (array)

  - `sys_calculated_field_errors.error` (string)

  - `sys_calculated_field_errors.field` (string)

  - `sys_configuration_snapshot_id` (string)
    If a snapshot was restored/applies to this record, the ID of the snapshot

  - `sys_created_at` (string, required)
    The date/time that this record was created, expressed in ISO-8601 date format

  - `sys_created_by_id` (string, required)
    The ID of the user that created this record

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

  - `sys_directive` (string)
    Means for passing directive information into an object processing logic

  - `sys_external_id` (string)
    The ID that a record has from an external system or data import

  - `sys_has_files_in_s3` (boolean)
    If true, this record has files in S3. If false, it doesnt, so no need to hit S3 upon deletion

  - `sys_last_bulk_data_operation_id` (string)
    If this record was last touched by a bulk data operation, the ID of that operation

  - `sys_last_bulk_data_operation_sys_version` (string)
    If this record was last touched by a bulk data operation, the sys_version at the time of that operation

  - `sys_last_modified_at` (string, required)
    The date/time that this record record was last modified, expressed in ISO-8601 date format

  - `sys_last_modified_by_id` (string, required)
    The ID of the user that last modified this record

  - `sys_last_security_context` (object)
    The security context of the last insert, modify, or delete performed on this item

  - `sys_locked` (boolean)
    If set, this record is locked and cannot be changed via the API

  - `sys_snapshot_base_version` (number)
    The version to use as a base when creating a configuration snapshot; if not set, 1 is used. Helpful when creating a sandbox

  - `sys_version` (number)
    A number representing the version of this record in the database

  - `type` (string, required)
    Enum: "change affiliations", "join", "reinstatement", "renewal"

## Response 200 headers (application/json):

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 400:

  - `400` (unknown)
    The JSON patch directive you supplied was not valid.

## Response 400 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 401:

  - `401` (unknown)
    Unauthorized.

## Response 401 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 403:

  - `403` (unknown)
    Forbidden.

## Response 403 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 404:

  - `404` (unknown)
    The application process could not be found.

## Response 404 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 409:

  - `409` (unknown)
    The application process could not be saved because it refers to/depends on a non-existent object.

## Response 409 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 429:

  - `429` (unknown)
    Limit exceeded... unable to retrieve application process based on tenant limits.

## Response 429 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

## Response 500:

  - `500` (unknown)
    General server error.

## Response 500 headers:

  - `Access-Control-Allow-Headers` (string)

  - `Access-Control-Allow-Methods` (string)

  - `Access-Control-Allow-Origin` (string)

