> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Coworker

> Update an existing Coworker record.

Updates an existing Coworker record. You must include the `Id` of the record to update along with all required fields.

## Authentication

<Note>
  This endpoint requires OAuth2 authentication. Include a valid bearer token in the `Authorization` header.
  The authenticated user must be a full unrestricted administrator or have the **`Coworker-Edit`** role.
</Note>

## Enums

<Accordion title="eCoworkerRecordType — CoworkerType values">
  | Value | Name       |
  | ----- | ---------- |
  | 1     | Individual |
  | 2     | Company    |
</Accordion>

<Accordion title="eGender — Gender values">
  | Value | Name         |
  | ----- | ------------ |
  | 0     | None         |
  | 1     | NotSet       |
  | 2     | Male         |
  | 3     | Female       |
  | 4     | Other        |
  | 5     | RatherNotSay |
</Accordion>

<Accordion title="eCoworkerTaxRateType — TaxRateType values">
  | Value | Name    |
  | ----- | ------- |
  | 1     | Default |
  | 2     | Reduced |
  | 3     | Exempt  |
</Accordion>

<Accordion title="eCoworkerAttendance — MondayAttendance values">
  | Value | Name              |
  | ----- | ----------------- |
  | 1     | WorkingFromOffice |
  | 2     | WorkingFromHome   |
  | 3     | WorkingFromAbroad |
  | 4     | NotWorking        |
  | 5     | Undefined         |
</Accordion>

<Accordion title="eRegularPaymentProvider">
  | Value | Name                       |
  | ----- | -------------------------- |
  | 0     | None                       |
  | 1     | MultiGateway               |
  | 2     | Stripe                     |
  | 3     | Forte                      |
  | 4     | AuthorizeNetSubscription   |
  | 5     | PaypalStandardSubscription |
  | 6     | PayPalAdaptive             |
  | 7     | EPay                       |
  | 8     | Braintree                  |
  | 9     | EziDebit                   |
  | 10    | LiqPay                     |
  | 11    | StripeACH                  |
  | 12    | GoCardless                 |
  | 13    | StripeBACS                 |
  | 94    | CreditNote                 |
  | 95    | GiftCard                   |
  | 96    | BankTransfer               |
  | 97    | Cash                       |
  | 98    | Check                      |
  | 99    | Other                      |
</Accordion>

## Request Body

### Required Fields

<ParamField body="Id" type="integer" required>
  The Id of the Coworker record to update.
</ParamField>

<ParamField body="CoworkerType" type="integer" required>
  Coworker type.
</ParamField>

<ParamField body="FullName" type="string" required>
  Full name.
</ParamField>

<ParamField body="Gender" type="integer" required>
  Gender.
</ParamField>

<ParamField body="Email" type="string" required>
  Email address.
</ParamField>

<ParamField body="CountryId" type="integer" required>
  Country Id.
</ParamField>

<ParamField body="SimpleTimeZoneId" type="integer" required>
  Simple Time Zone Id.
</ParamField>

<ParamField body="TaxRateType" type="integer" required>
  Tax rate type.
</ParamField>

<ParamField body="MondayAttendance" type="integer" required>
  Monday attendance.
</ParamField>

<ParamField body="TuesdayAttendance" type="integer" required>
  Tuesday attendance.
</ParamField>

<ParamField body="WednesdayAttendance" type="integer" required>
  Wednesday attendance.
</ParamField>

<ParamField body="ThursdayAttendance" type="integer" required>
  Thursday attendance.
</ParamField>

<ParamField body="FridayAttendance" type="integer" required>
  Friday attendance.
</ParamField>

<ParamField body="SaturdayAttendance" type="integer" required>
  Saturday attendance.
</ParamField>

<ParamField body="SundayAttendance" type="integer" required>
  Sunday attendance.
</ParamField>

### Optional Fields

<ParamField body="Businesses" type="integer[]">
  Businesses.
</ParamField>

<ParamField body="AddedBusinesses" type="integer[]">
  Added Businesses.
</ParamField>

<ParamField body="RemovedBusinesses" type="integer[]">
  Removed Businesses.
</ParamField>

<ParamField body="Teams" type="integer[]">
  Teams.
</ParamField>

<ParamField body="AddedTeams" type="integer[]">
  Added Teams.
</ParamField>

<ParamField body="RemovedTeams" type="integer[]">
  Removed Teams.
</ParamField>

<ParamField body="Salutation" type="string">
  Salutation.
</ParamField>

<ParamField body="CreateUser" type="boolean">
  Create user account. Grants portal and app access and sends a welcome email with the access details.
</ParamField>

<ParamField body="NewAvatarUrl" type="string">
  New Avatar Url.
</ParamField>

<ParamField body="ClearAvatarFile" type="boolean">
  Clear Avatar File.
</ParamField>

<ParamField body="NewBannerImageUrl" type="string">
  New Banner Image Url.
</ParamField>

<ParamField body="ClearBannerImageFile" type="boolean">
  Clear Banner Image File.
</ParamField>

<ParamField body="Address" type="string">
  Address.
</ParamField>

<ParamField body="PostCode" type="string">
  Post code.
</ParamField>

<ParamField body="CityName" type="string">
  City name.
</ParamField>

<ParamField body="State" type="string">
  State.
</ParamField>

<ParamField body="MobilePhone" type="string">
  Mobile phone.
</ParamField>

<ParamField body="LandLine" type="string">
  Land line.
</ParamField>

<ParamField body="DateOfBirth" type="string">
  Date of birth.
</ParamField>

<ParamField body="NickName" type="string">
  Nickname.
</ParamField>

<ParamField body="BusinessArea" type="string">
  Business area.
</ParamField>

<ParamField body="Position" type="string">
  Position.
</ParamField>

<ParamField body="CompanyName" type="string">
  Company name.
</ParamField>

<ParamField body="ProfileWebsite" type="string">
  Profile website.
</ParamField>

<ParamField body="ProfileTags" type="string">
  Profile tags.
</ParamField>

<ParamField body="ProfileSummary" type="string">
  Profile summary.
</ParamField>

<ParamField body="Twitter" type="string">
  Twitter handle.
</ParamField>

<ParamField body="Facebook" type="string">
  Facebook profile.
</ParamField>

<ParamField body="Google" type="string">
  Google.
</ParamField>

<ParamField body="Telegram" type="string">
  Telegram handle.
</ParamField>

<ParamField body="Linkedin" type="string">
  LinkedIn profile.
</ParamField>

<ParamField body="Skype" type="string">
  Skype handle.
</ParamField>

<ParamField body="Github" type="string">
  GitHub profile.
</ParamField>

<ParamField body="Pinterest" type="string">
  Pinterest.
</ParamField>

<ParamField body="Flickr" type="string">
  Flickr.
</ParamField>

<ParamField body="Instagram" type="string">
  Instagram profile.
</ParamField>

<ParamField body="Vimeo" type="string">
  Vimeo.
</ParamField>

<ParamField body="Tumblr" type="string">
  Tumblr.
</ParamField>

<ParamField body="Blogger" type="string">
  Blogger.
</ParamField>

<ParamField body="ProfileIsPublic" type="boolean">
  Profile is public.
</ParamField>

<ParamField body="InvoicingBusinessId" type="integer">
  Invoicing Business Id.
</ParamField>

<ParamField body="BillingEmail" type="string">
  Billing email.
</ParamField>

<ParamField body="BillingName" type="string">
  Billing name.
</ParamField>

<ParamField body="BillingAddress" type="string">
  Billing address.
</ParamField>

<ParamField body="BillingPostCode" type="string">
  Billing post code.
</ParamField>

<ParamField body="BillingCityName" type="string">
  Billing city.
</ParamField>

<ParamField body="BillingState" type="string">
  Billing state.
</ParamField>

<ParamField body="BillingCountryId" type="integer">
  Billing Country Id.
</ParamField>

<ParamField body="BillingSimpleTimeZoneId" type="integer">
  Billing Simple Time Zone Id.
</ParamField>

<ParamField body="TaxRate" type="number">
  Tax rate.
</ParamField>

<ParamField body="TaxIDNumber" type="string">
  Tax ID number.
</ParamField>

<ParamField body="BankName" type="string">
  Bank name.
</ParamField>

<ParamField body="BankAccount" type="string">
  Bank account.
</ParamField>

<ParamField body="BankBranch" type="string">
  Bank branch.
</ParamField>

<ParamField body="NotifyOnNewInvoice" type="boolean">
  Notify on new invoice.
</ParamField>

<ParamField body="NotifyOnNewPayment" type="boolean">
  Notify on new payment.
</ParamField>

<ParamField body="NotifyOnFailedPayment" type="boolean">
  Notify on failed payment.
</ParamField>

<ParamField body="ShowPayingMemberInvoices" type="boolean">
  Show paying member invoices.
</ParamField>

<ParamField body="EnableGoCardlessPayments" type="boolean">
  Enable GoCardless payments.
</ParamField>

<ParamField body="UseGoCardlessProPayments" type="boolean">
  Use Go Cardless Pro Payments.
</ParamField>

<ParamField body="GoCardlessContractNumber" type="string">
  GoCardless contract number.
</ParamField>

<ParamField body="StripeBacsDDPaymentMethodId" type="string">
  Stripe Bacs DDPayment Method Id.
</ParamField>

<ParamField body="StripeBacsDDMandateId" type="string">
  Stripe Bacs DDMandate Id.
</ParamField>

<ParamField body="StripeBacsDDCustomerToken" type="string">
  Stripe Bacs DDCustomer Token.
</ParamField>

<ParamField body="StripeBacsDDEnabled" type="boolean">
  Stripe Bacs DDEnabled.
</ParamField>

<ParamField body="LastOverDueInvoiceReminder" type="string">
  Last Over Due Invoice Reminder.
</ParamField>

<ParamField body="LastLowCreditReminder" type="string">
  Last Low Credit Reminder.
</ParamField>

<ParamField body="RefererGuid" type="string">
  Referer Guid.
</ParamField>

<ParamField body="RegularPaymentProvider" type="integer">
  Regular payment provider. See `eRegularPaymentProvider?` enum above.
</ParamField>

<ParamField body="RegularPaymentContractNumber" type="string">
  Regular payment contract number.
</ParamField>

<ParamField body="DoNotProcessInvoicesAutomatically" type="boolean">
  Do not process invoices automatically.
</ParamField>

<ParamField body="AllowNetworkCheckin" type="boolean">
  Allow network check-in.
</ParamField>

<ParamField body="AccessCardId" type="string">
  Access card ID.
</ParamField>

<ParamField body="AccessPincode" type="string">
  Access PIN code.
</ParamField>

<ParamField body="KeyFobNumber" type="string">
  Key fob number.
</ParamField>

<ParamField body="NotifyOnDelivery" type="boolean">
  Notify on delivery.
</ParamField>

<ParamField body="EzeepUserId" type="string">
  Ezeep User Id.
</ParamField>

<ParamField body="EzeepFreePrinting" type="boolean">
  Ezeep Free Printing.
</ParamField>

<ParamField body="EzeepBlueUserId" type="string">
  Ezeep Blue User Id.
</ParamField>

<ParamField body="EzeepBlueFreePrinting" type="boolean">
  Ezeep Blue Free Printing.
</ParamField>

<ParamField body="EzeepBluePrintingEnabled" type="boolean">
  Ezeep Blue Printing Enabled.
</ParamField>

<ParamField body="PaperCutPayAsYouPrint" type="boolean">
  Paper Cut Pay As You Print.
</ParamField>

<ParamField body="PaperCutFreePrinting" type="boolean">
  Paper Cut Free Printing.
</ParamField>

<ParamField body="PaperCutUserId" type="string">
  Paper Cut User Id.
</ParamField>

<ParamField body="CanMakeBookings" type="boolean">
  Can make bookings.
</ParamField>

<ParamField body="CanBookForTeam" type="boolean">
  Can book for team.
</ParamField>

<ParamField body="CanPurchaseProducts" type="boolean">
  Can purchase products.
</ParamField>

<ParamField body="CanPurchaseEvents" type="boolean">
  Can purchase events.
</ParamField>

<ParamField body="CanAccessCommunity" type="boolean">
  Can access community.
</ParamField>

<ParamField body="ReferenceNumber" type="string">
  Reference number.
</ParamField>

<ParamField body="Tag" type="string">
  Tag.
</ParamField>

<ParamField body="Notes" type="string">
  Notes.
</ParamField>

<ParamField body="ShowAlert" type="boolean">
  Show alert.
</ParamField>

<ParamField body="AlertNote" type="string">
  Alert note.
</ParamField>

<ParamField body="UserId" type="integer">
  User Id.
</ParamField>

<ParamField body="Active" type="boolean">
  Active.
</ParamField>

<ParamField body="NextAutoInvoice" type="string">
  Next auto invoice date.
</ParamField>

<ParamField body="InvoiceDueDatePeriod" type="integer">
  Invoice due date period.
</ParamField>

<ParamField body="RegistrationDate" type="string">
  Registration date.
</ParamField>

<ParamField body="GeneralTermsAccepted" type="boolean">
  General terms accepted.
</ParamField>

<ParamField body="LastRenewal" type="string">
  Last Renewal.
</ParamField>

<ParamField body="LastInvoiceAttempt" type="string">
  Last Invoice Attempt.
</ParamField>

<ParamField body="Custom1" type="string">
  Custom field 1.
</ParamField>

<ParamField body="Custom2" type="string">
  Custom field 2.
</ParamField>

<ParamField body="Custom3" type="string">
  Custom field 3.
</ParamField>

<ParamField body="Custom4" type="string">
  Custom field 4.
</ParamField>

<ParamField body="Custom5" type="string">
  Custom field 5.
</ParamField>

<ParamField body="Custom6" type="string">
  Custom field 6.
</ParamField>

<ParamField body="Custom7" type="string">
  Custom field 7.
</ParamField>

<ParamField body="Custom8" type="string">
  Custom field 8.
</ParamField>

<ParamField body="Custom9" type="string">
  Custom field 9.
</ParamField>

<ParamField body="Custom10" type="string">
  Custom field 10.
</ParamField>

<ParamField body="Custom11" type="string">
  Custom field 11.
</ParamField>

<ParamField body="Custom12" type="string">
  Custom field 12.
</ParamField>

<ParamField body="Custom13" type="string">
  Custom field 13.
</ParamField>

<ParamField body="Custom14" type="string">
  Custom field 14.
</ParamField>

<ParamField body="Custom15" type="string">
  Custom field 15.
</ParamField>

<ParamField body="Custom16" type="string">
  Custom field 16.
</ParamField>

<ParamField body="Custom17" type="string">
  Custom field 17.
</ParamField>

<ParamField body="Custom18" type="string">
  Custom field 18.
</ParamField>

<ParamField body="Custom19" type="string">
  Custom field 19.
</ParamField>

<ParamField body="Custom20" type="string">
  Custom field 20.
</ParamField>

<ParamField body="Custom21" type="string">
  Custom field 21.
</ParamField>

<ParamField body="Custom22" type="string">
  Custom field 22.
</ParamField>

<ParamField body="Custom23" type="string">
  Custom field 23.
</ParamField>

<ParamField body="Custom24" type="string">
  Custom field 24.
</ParamField>

<ParamField body="Custom25" type="string">
  Custom field 25.
</ParamField>

<ParamField body="Custom26" type="string">
  Custom field 26.
</ParamField>

<ParamField body="Custom27" type="string">
  Custom field 27.
</ParamField>

<ParamField body="Custom28" type="string">
  Custom field 28.
</ParamField>

<ParamField body="Custom29" type="string">
  Custom field 29.
</ParamField>

<ParamField body="Custom30" type="string">
  Custom field 30.
</ParamField>

<ParamField body="NextInvoiceLocal" type="string">
  Next Invoice Local.
</ParamField>

<ParamField body="NextAutoInvoiceLocal" type="string">
  Next Auto Invoice Local.
</ParamField>

<ParamField body="RegistrationDateLocal" type="string">
  Registration Date Local.
</ParamField>

<ParamField body="AccessControlDebounceTime" type="string">
  Access Control Debounce Time.
</ParamField>

<ParamField body="Office365AccessToken" type="string">
  Office365Access Token.
</ParamField>

<ParamField body="Office365RefreshToken" type="string">
  Office365Refresh Token.
</ParamField>

<ParamField body="ZoomAccessToken" type="string">
  Zoom Access Token.
</ParamField>

<ParamField body="ZoomRefreshToken" type="string">
  Zoom Refresh Token.
</ParamField>

<ParamField body="ZoomUserId" type="string">
  Zoom User Id.
</ParamField>

<ParamField body="DoordeckPrivateKey" type="string">
  Doordeck Private Key.
</ParamField>

<ParamField body="DoordeckPublicKey" type="string">
  Doordeck Public Key.
</ParamField>

<ParamField body="DoordeckUserGuid" type="string">
  Doordeck User Guid.
</ParamField>

<ParamField body="Office365SubscriptionId" type="string">
  Office365Subscription Id.
</ParamField>

<ParamField body="SaltoV2AccessToken" type="string">
  Salto V2Access Token.
</ParamField>

<ParamField body="StripeACHBankToken" type="string">
  Stripe ACHBank Token.
</ParamField>

<ParamField body="StripeACHCustomerToken" type="string">
  Stripe ACHCustomer Token.
</ParamField>

<ParamField body="HasAcceptedStripeACHAgreement" type="boolean">
  Has Accepted Stripe ACHAgreement.
</ParamField>

<ParamField body="HasVerifiedStripeACHDeposits" type="boolean">
  Has Verified Stripe ACHDeposits.
</ParamField>

<ParamField body="PurchaseOrder" type="string">
  Purchase order.
</ParamField>

<ParamField body="SyncToSquare" type="boolean">
  Sync To Square.
</ParamField>

<ParamField body="NotifyOnDeliveriesEmail" type="string">
  Notify on deliveries email.
</ParamField>

<ParamField body="AccessControlErrorNotificationSent" type="boolean">
  Access Control Error Notification Sent.
</ParamField>

<ParamField body="SyncToPaperCutDue" type="boolean">
  Sync To Paper Cut Due.
</ParamField>

<ParamField body="GoogleApiToken" type="string">
  Google Api Token.
</ParamField>

<ParamField body="GoogleSubscriptionId" type="string">
  Google Subscription Id.
</ParamField>

<ParamField body="InvoiceSegregationOverride" type="boolean">
  Invoice Segregation Override.
</ParamField>

<ParamField body="InvoiceSegregateContracts" type="boolean">
  Invoice Segregate Contracts.
</ParamField>

<ParamField body="InvoiceSegregateBookings" type="boolean">
  Invoice Segregate Bookings.
</ParamField>

<ParamField body="InvoiceSegregateProducts" type="boolean">
  Invoice Segregate Products.
</ParamField>

<ParamField body="InvoiceSegregateTimePasses" type="boolean">
  Invoice Segregate Time Passes.
</ParamField>

<ParamField body="InvoiceSegregateTickets" type="boolean">
  Invoice Segregate Tickets.
</ParamField>

<ParamField body="IsDefaultProfile" type="boolean">
  Is Default Profile.
</ParamField>

<ParamField body="InvoiceSegregateCharges" type="boolean">
  Invoice Segregate Charges.
</ParamField>

<ParamField body="BrivoUserId" type="integer">
  Brivo User Id.
</ParamField>

<ParamField body="EzeepPrintingEnabled" type="boolean">
  Ezeep Printing Enabled.
</ParamField>

<ParamField body="InvoiceDueDateDay" type="integer">
  Invoice Due Date Day.
</ParamField>

<ParamField body="Longitude" type="number">
  Longitude.
</ParamField>

<ParamField body="Latitude" type="number">
  Latitude.
</ParamField>

<ParamField body="BillingLongitude" type="number">
  Billing longitude.
</ParamField>

<ParamField body="BillingLatitude" type="number">
  Billing latitude.
</ParamField>

<ParamField body="Archived" type="boolean">
  Archived.
</ParamField>

## Code Examples

<CodeGroup>
  ```bash cURL theme={null}
  curl -X PUT \
    "https://spaces.nexudus.com/api/spaces/coworkers" \
    -H "Authorization: Bearer YOUR_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{
      "CoworkerType": 0,
      "FullName": "",
      "Gender": 0,
      "Email": "",
      "CountryId": 0,
      "SimpleTimeZoneId": 0,
      "TaxRateType": 0,
      "MondayAttendance": 0,
      "TuesdayAttendance": 0,
      "WednesdayAttendance": 0,
      "ThursdayAttendance": 0,
      "FridayAttendance": 0,
      "SaturdayAttendance": 0,
      "SundayAttendance": 0,
      "Id": 87654321
  }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    'https://spaces.nexudus.com/api/spaces/coworkers',
    {
      method: 'PUT',
      headers: {
        'Authorization': 'Bearer YOUR_TOKEN',
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        CoworkerType: 0,
        FullName: '',
        Gender: 0,
        Email: '',
        CountryId: 0,
        SimpleTimeZoneId: 0,
        TaxRateType: 0,
        MondayAttendance: 0,
        TuesdayAttendance: 0,
        WednesdayAttendance: 0,
        ThursdayAttendance: 0,
        FridayAttendance: 0,
        SaturdayAttendance: 0,
        SundayAttendance: 0,
        Id: 87654321
      })
    }
  );

  const data = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.put(
      'https://spaces.nexudus.com/api/spaces/coworkers',
      headers={
          'Authorization': 'Bearer YOUR_TOKEN',
          'Content-Type': 'application/json'
      },
      json={
          'CoworkerType': 0,
          'FullName': '',
          'Gender': 0,
          'Email': '',
          'CountryId': 0,
          'SimpleTimeZoneId': 0,
          'TaxRateType': 0,
          'MondayAttendance': 0,
          'TuesdayAttendance': 0,
          'WednesdayAttendance': 0,
          'ThursdayAttendance': 0,
          'FridayAttendance': 0,
          'SaturdayAttendance': 0,
          'SundayAttendance': 0,
          'Id': 87654321
      }
  )

  data = response.json()
  ```
</CodeGroup>

## Response

### 200

<ResponseField name="Status" type="integer">
  HTTP status code. `200` on success.
</ResponseField>

<ResponseField name="Message" type="string">
  A human-readable message confirming the update.
</ResponseField>

<ResponseField name="Value" type="object">
  Contains the `Id` of the updated record.
</ResponseField>

<ResponseField name="WasSuccessful" type="boolean">
  `true` if the coworker was updated successfully.
</ResponseField>

<ResponseField name="Errors" type="array">
  `null` on success.
</ResponseField>

```json Example Response theme={null}
{
  "Status": 200,
  "Message": "Coworker was successfully updated.",
  "Value": {
    "Id": 87654321
  },
  "OpenInDialog": false,
  "OpenInWindow": false,
  "RedirectURL": null,
  "JavaScript": null,
  "UpdatedOn": "2025-01-15T10:30:00Z",
  "UpdatedBy": "admin@example.com",
  "Errors": null,
  "WasSuccessful": true
}
```

### 400

<ResponseField name="Message" type="string">
  A summary of the validation error(s), in the format `PropertyName: error message`.
</ResponseField>

<ResponseField name="Value" type="any">
  `null` on validation failure.
</ResponseField>

<ResponseField name="Errors" type="object[]">
  Array of validation errors.

  <Expandable>
    <ResponseField name="AttemptedValue" type="any">
      The value that was submitted for the field, or `null` if missing.
    </ResponseField>

    <ResponseField name="Message" type="string">
      The validation error message.
    </ResponseField>

    <ResponseField name="PropertyName" type="string">
      The name of the property that failed validation.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="WasSuccessful" type="boolean">
  `false` when the request fails validation.
</ResponseField>

```json Example Response theme={null}
{
  "Message": "CoworkerType: is a required field",
  "Value": null,
  "Errors": [
    {
      "AttemptedValue": null,
      "Message": "is a required field",
      "PropertyName": "CoworkerType"
    }
  ],
  "WasSuccessful": false
}
```
