# Create or Update Batch GroupFlexSchedule

Create or Update multiple GroupFlexSchedule at once.  If the entity exists, it will be updated.  If the entity does not exist, it will be created.

Endpoint: PUT /groups/{groupID}/flex-schedules-batch
Version: v1
Security: apiKeyAuth, bearerAuth

## Security:

  - `apiKeyAuth` (unknown)
    apiKey in header x-api-key

  - `bearerAuth` (unknown)
    http bearer JWT

## Path parameters:

  - `groupID` (string, required)
    Group ID

## Header parameters:

  - `vbasoftware-database` (string, required)
    Target database

## Request fields (application/json):

  - `groupFlexSchedule_Key` (integer, required)
    The unique identifier for the flex schedule. Note: This field is marked as NOT NULL in the database and therefore required by the API.

  - `calendar_Year` (string, required)
    References GroupFlex.Calendar_Year value on the parent record.

  - `entry_Date` (string)
    Date when the record was first added to the system.

  - `entry_User` (string)
    User that first added the record to the system.

  - `group_ID` (string, required)
    References GroupFlex.Group_ID value on the parent record.

  - `plan_ID` (string, required)
    References GroupFlex.Plan_ID value on the parent record.

  - `schedule_Date` (string, required)
    The scheduled date of the flex payment. Note: This field is marked as NOT NULL in the database and therefore required by the API.

  - `schedule_Type` (string, required)
    The type of schedule to apply for payments. If this value is CUSTOM, the user defines the value by hand for "Schedule_Date". For all other types the "Schedule_Date" is calculated and populated.

  - `update_Date` (string)
    Date when the record was last updated in the system.

  - `update_User` (string)
    User that last updated the record in the system.

## Response 207:

  - `207` (unknown)
    Success

## Response 207 fields (application/json):

  - `data` (array)

  - `data.id` (array, required)
    List of key/value pairs that represent the unique id for the entity operation.

  - `data.id.key` (string)

  - `data.id.value` (string)

  - `data.status` (integer, required)
    http status of the operation (eg, 200, 201, 500)

  - `data.body` (string, required)
    operation message (eg, Updated, Created, Error message)

  - `error` (object)

  - `error.detail` (string)
    A human-readable explanation specific to this occurrence of the problem.

  - `error.instance` (string)
    A URI reference that identifies the specific occurrence of the problem.It may
or may not yield further information if dereferenced.

  - `error.status` (integer)
    The HTTP status code([RFC7231], Section 6) generated by the origin server for
this occurrence of the problem.

  - `error.title` (string)
    A short, human-readable summary of the problem type.It SHOULD NOT change from
occurrence to occurrence of the problem, except for purposes of localization(e.g.,
using proactive content negotiation; see[RFC7231], Section 3.4).

  - `error.type` (string)
    A URI reference [RFC3986] that identifies the problem type. This specification
encourages that, when dereferenced, it provide human-readable documentation for
the problem type (e.g., using HTML [W3C.REC-html5-20141028]). When this member
is not present, its value is assumed to be "about:blank".

  - `debug` (object)

  - `debug.activityID` (string, required)

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 403:

  - `403` (unknown)
    Forbidden. The x-api-key header is missing or not valid. The API gateway sends this response, not VBAPI, so the body is not the VBAPI envelope; see Errors and troubleshooting.

## Response 429:

  - `429` (unknown)
    Too many requests. The limit is 25 requests per second sustained, with bursts up to 50, per API key. Wait and retry with exponential backoff and jitter.

