> For the complete documentation index, see [llms.txt](https://docs.skhokho.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.skhokho.ai/organization/organisation-management.md).

# 🏢 Organisation Management

Organisation, team members, and workspace management

## List user organisations

> Retrieve list of organisations where the user is a member or owner

```json
{"openapi":"3.0.3","info":{"title":"Skhokho API","version":"v1.0"},"tags":[{"name":"Organisation Management","description":"Organisation, team members, and workspace management"}],"servers":[{"url":"https://skhokho.ai","description":"Production"},{"url":"http://102.209.118.152:8000/","description":"Local"},{"url":"https://dev.skhokho.ai","description":"Development"}],"security":[{"cookieAuth":[]},{"basicAuth":[]}],"components":{"securitySchemes":{"cookieAuth":{"type":"apiKey","in":"cookie","name":"sessionid"},"basicAuth":{"type":"http","scheme":"basic"}},"schemas":{"OrganisationOwner":{"type":"object","description":"Organisation model for owners (read/write, full surface).","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"name":{"type":"string","nullable":true},"language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans","",null],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese","nullable":true},"language_display":{"type":"string","readOnly":true},"business_description":{"type":"string","nullable":true},"business_category":{"enum":["agriculture","cleaning","construction","consulting","creative","education","events","handyman","health","home_based","hospitality","it_support","legal","logistics","manufacturing","marketing","music","non_profit","online_retail","photography","printing","professional","travel","utilities","wholesale","writing","virtual_assistance","other","",null],"type":"string","description":"* `agriculture` - Agriculture and Farming\n* `cleaning` - Cleaning Services\n* `construction` - Construction and Real Estate Services\n* `consulting` - Consulting and Freelancing\n* `creative` - Creative and Design Services\n* `education` - Education and Tutoring Services\n* `events` - Entertainment and Events Planning\n* `handyman` - Handyman and Home Repair Services\n* `health` - Health and Wellness\n* `home_based` - Home-Based Businesses\n* `hospitality` - Hospitality and Tourism\n* `it_support` - IT and Software Support Services\n* `legal` - Legal and Financial Services\n* `logistics` - Logistics and Delivery Services\n* `manufacturing` - Manufacturing and Small-Scale Production\n* `marketing` - Marketing and Advertising Services\n* `music` - Music and Entertainment Services\n* `non_profit` - Non-Profit and Social Enterprises\n* `online_retail` - Online Retail and E-commerce\n* `photography` - Photography and Videography Services\n* `printing` - Printing and Copy Services\n* `professional` - Professional Services\n* `travel` - Travel Agencies\n* `utilities` - Utilities and Renewable Energy Services\n* `wholesale` - Wholesale and Distribution\n* `writing` - Writing and Editing Services\n* `virtual_assistance` - Virtual Assistance and Admin Support\n* `other` - Other","nullable":true},"business_category_display":{"type":"string","readOnly":true},"other_category":{"type":"string","nullable":true},"how_did_you_hear_about_us":{"enum":["google","social_media","online_ads","word_of_mouth","email_marketing","event","blog","webinar","podcast","tv_radio","print_media","referral","other","",null],"type":"string","description":"* `google` - Google Search\n* `social_media` - Social Media\n* `online_ads` - Online Ads\n* `word_of_mouth` - Word of Mouth\n* `email_marketing` - Email Marketing\n* `event` - Event or Conference\n* `blog` - Blog or Article\n* `webinar` - Webinar or Online Workshop\n* `podcast` - Podcast\n* `tv_radio` - TV or Radio Advertisement\n* `print_media` - Print Media\n* `referral` - Referral Program\n* `other` - Other","nullable":true},"business_website":{"type":"string","format":"uri","nullable":true,"maxLength":300},"vat_number":{"type":"string","nullable":true,"description":"VAT/Tax registration number","maxLength":100},"logo_url":{"type":"string","nullable":true,"readOnly":true},"setup_done":{"type":"boolean"},"address":{"allOf":[{"$ref":"#/components/schemas/Address"}],"nullable":true},"banking_information":{"allOf":[{"$ref":"#/components/schemas/BankingInformation"}],"nullable":true},"owner":{"type":"object","additionalProperties":{},"nullable":true,"readOnly":true},"member_count":{"type":"integer","nullable":true,"readOnly":true},"default_currency":{"type":"string","description":"Default currency code (ISO 4217) for financial transactions","maxLength":3},"default_vat_rate":{"type":"string","format":"decimal","pattern":"^-?\\d{0,3}(?:\\.\\d{0,2})?$","title":"Default VAT Rate (%)","description":"Default VAT/tax rate percentage for line items"},"financial_year_end":{"enum":["01-31","02-28","03-31","04-30","05-31","06-30","07-31","08-31","09-30","10-31","11-30","12-31"],"type":"string","description":"Month and day when the financial year ends (MM-DD format)\n\n* `01-31` - January 31\n* `02-28` - February 28\n* `03-31` - March 31\n* `04-30` - April 30\n* `05-31` - May 31\n* `06-30` - June 30\n* `07-31` - July 31\n* `08-31` - August 31\n* `09-30` - September 30\n* `10-31` - October 31\n* `11-30` - November 30\n* `12-31` - December 31"},"financial_year_end_display":{"type":"string","readOnly":true},"accounting_method":{"enum":["cash","accrual"],"type":"string","description":"Accounting method for financial reporting\n\n* `cash` - Cash Basis\n* `accrual` - Accrual Basis"},"accounting_method_display":{"type":"string","readOnly":true},"reporting_currency":{"enum":["USD","EUR","GBP","JPY","CAD","AUD","CHF","CNY","INR","ZAR","KES","NGN","GHS","EGP","MAD","TZS","UGX","RWF","ETB","BWP"],"type":"string","description":"Primary currency for financial reporting and statements\n\n* `USD` - US Dollar (USD)\n* `EUR` - Euro (EUR)\n* `GBP` - British Pound (GBP)\n* `JPY` - Japanese Yen (JPY)\n* `CAD` - Canadian Dollar (CAD)\n* `AUD` - Australian Dollar (AUD)\n* `CHF` - Swiss Franc (CHF)\n* `CNY` - Chinese Yuan (CNY)\n* `INR` - Indian Rupee (INR)\n* `ZAR` - South African Rand (ZAR)\n* `KES` - Kenyan Shilling (KES)\n* `NGN` - Nigerian Naira (NGN)\n* `GHS` - Ghanaian Cedi (GHS)\n* `EGP` - Egyptian Pound (EGP)\n* `MAD` - Moroccan Dirham (MAD)\n* `TZS` - Tanzanian Shilling (TZS)\n* `UGX` - Ugandan Shilling (UGX)\n* `RWF` - Rwandan Franc (RWF)\n* `ETB` - Ethiopian Birr (ETB)\n* `BWP` - Botswana Pula (BWP)"},"reporting_currency_display":{"type":"string","readOnly":true},"enable_multi_currency":{"type":"boolean","description":"Enable multi-currency transactions and reporting"},"auto_close_financial_year":{"type":"boolean","description":"Automatically close financial year and create opening balances"},"retain_transaction_history":{"type":"boolean","description":"Keep detailed transaction history after year-end closing"},"financial_year_lock_date":{"type":"string","format":"date","nullable":true,"description":"Date before which transactions cannot be modified"},"current_financial_year_label":{"type":"string","nullable":true,"readOnly":true},"contact_agent_active":{"type":"boolean","description":"Enable Contact Agent for managing contacts and client relationships"},"finance_agent_active":{"type":"boolean","description":"Enable Finance Agent for financial management and accounting"},"business_agent_active":{"type":"boolean","description":"Enable Business Agent for general business operations and strategy"},"asset_agent_active":{"type":"boolean","description":"Enable Asset Agent for asset management and inventory tracking"},"client_agent_active":{"type":"boolean","description":"Enable Client Agent for client relationship management"},"docs_agent_active":{"type":"boolean","description":"Enable Docs Agent for document management and file organization"},"notes_agent_active":{"type":"boolean","description":"Enable Notes Agent for note-taking and knowledge management"},"project_agent_active":{"type":"boolean","description":"Enable Project Agent for project management and task tracking"},"user_manager_agent_active":{"type":"boolean","description":"Enable User Manager Agent for user management and permissions"},"stripe_customer_id":{"type":"string","nullable":true,"description":"Stripe customer ID for billing and subscriptions","maxLength":100},"monthly_ai_credits_allocated":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Allocated (USD)","description":"Monthly AI credits allocated based on pricing tier"},"monthly_ai_credits_used":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Used (USD)","description":"AI credits used in current month"},"monthly_ai_credits_remaining":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Remaining (USD)","description":"AI credits remaining in current month"},"last_monthly_reset_date":{"type":"string","format":"date","nullable":true,"description":"Date when monthly AI credits were last reset"},"current_billing_cycle_start":{"type":"string","format":"date","nullable":true,"description":"Start date of current monthly billing cycle"},"current_billing_cycle_end":{"type":"string","format":"date","nullable":true,"description":"End date of current monthly billing cycle"},"purchased_seats":{"type":"integer","maximum":2147483647,"minimum":0,"description":"Number of additional seats purchased beyond the base plan"},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}},"required":["accounting_method_display","business_category_display","current_financial_year_label","financial_year_end_display","language_display","logo_url","member_count","owner","reporting_currency_display"]},"Address":{"type":"object","description":"Serializer for Address model with essential location fields.","properties":{"address_line_1":{"type":"string","nullable":true,"maxLength":300},"city":{"type":"string","nullable":true,"maxLength":300},"province_state":{"type":"string","nullable":true,"title":"Province/State","maxLength":300},"postal_code":{"type":"string","nullable":true,"maxLength":300},"country_name":{"type":"string","readOnly":true}},"required":["country_name"]},"BankingInformation":{"type":"object","description":"Serializer for BankingInformation with PII hygiene:\n- `account_number` is write-only\n- expose masked `account_number_last4` for reads","properties":{"bank_name":{"type":"string","nullable":true,"maxLength":200},"account_number_last4":{"type":"string","nullable":true,"readOnly":true},"branch_code":{"type":"string","nullable":true,"maxLength":50},"account_type":{"enum":["checking","savings","business","other","",null],"type":"string","description":"* `checking` - Checking\n* `savings` - Savings\n* `business` - Business\n* `other` - Other","nullable":true},"routing_number":{"type":"string","nullable":true,"maxLength":50},"swift_code":{"type":"string","nullable":true,"maxLength":50},"date_created":{"type":"string","format":"date-time","readOnly":true},"last_updated":{"type":"string","format":"date-time","readOnly":true},"account_type_display":{"type":"string","readOnly":true}},"required":["account_number_last4","account_type_display","date_created","last_updated"]}}},"paths":{"/api/v1.0/organisations/":{"get":{"operationId":"organisations_list","description":"Retrieve list of organisations where the user is a member or owner","summary":"List user organisations","tags":["Organisation Management"],"responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/OrganisationOwner"}}}},"description":""}}}}}}
```

## Get organisation details

> Get basic information about an organisation (membership required)

```json
{"openapi":"3.0.3","info":{"title":"Skhokho API","version":"v1.0"},"tags":[{"name":"Organisation Management","description":"Organisation, team members, and workspace management"}],"servers":[{"url":"https://skhokho.ai","description":"Production"},{"url":"http://102.209.118.152:8000/","description":"Local"},{"url":"https://dev.skhokho.ai","description":"Development"}],"security":[{"cookieAuth":[]},{"basicAuth":[]}],"components":{"securitySchemes":{"cookieAuth":{"type":"apiKey","in":"cookie","name":"sessionid"},"basicAuth":{"type":"http","scheme":"basic"}},"schemas":{"OrganisationBasic":{"type":"object","description":"Basic serializer for Organisation – limited information for regular members.","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"name":{"type":"string","readOnly":true},"language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans","",null],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese","nullable":true},"language_display":{"type":"string","readOnly":true},"business_description":{"type":"string","readOnly":true,"nullable":true},"business_category":{"enum":["agriculture","cleaning","construction","consulting","creative","education","events","handyman","health","home_based","hospitality","it_support","legal","logistics","manufacturing","marketing","music","non_profit","online_retail","photography","printing","professional","travel","utilities","wholesale","writing","virtual_assistance","other","",null],"type":"string","description":"* `agriculture` - Agriculture and Farming\n* `cleaning` - Cleaning Services\n* `construction` - Construction and Real Estate Services\n* `consulting` - Consulting and Freelancing\n* `creative` - Creative and Design Services\n* `education` - Education and Tutoring Services\n* `events` - Entertainment and Events Planning\n* `handyman` - Handyman and Home Repair Services\n* `health` - Health and Wellness\n* `home_based` - Home-Based Businesses\n* `hospitality` - Hospitality and Tourism\n* `it_support` - IT and Software Support Services\n* `legal` - Legal and Financial Services\n* `logistics` - Logistics and Delivery Services\n* `manufacturing` - Manufacturing and Small-Scale Production\n* `marketing` - Marketing and Advertising Services\n* `music` - Music and Entertainment Services\n* `non_profit` - Non-Profit and Social Enterprises\n* `online_retail` - Online Retail and E-commerce\n* `photography` - Photography and Videography Services\n* `printing` - Printing and Copy Services\n* `professional` - Professional Services\n* `travel` - Travel Agencies\n* `utilities` - Utilities and Renewable Energy Services\n* `wholesale` - Wholesale and Distribution\n* `writing` - Writing and Editing Services\n* `virtual_assistance` - Virtual Assistance and Admin Support\n* `other` - Other","nullable":true},"business_category_display":{"type":"string","readOnly":true},"business_website":{"type":"string","format":"uri","nullable":true,"maxLength":300},"logo_url":{"type":"string","nullable":true,"readOnly":true},"owner":{"type":"object","additionalProperties":{},"nullable":true,"readOnly":true},"member_count":{"type":"integer","nullable":true,"readOnly":true},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}},"required":["business_category_display","business_description","language_display","logo_url","member_count","name","owner"]}}},"paths":{"/api/v1.0/organisation/{unique_id}/":{"get":{"operationId":"organisation_retrieve","description":"Get basic information about an organisation (membership required)","summary":"Get organisation details","parameters":[{"in":"path","name":"unique_id","schema":{"type":"string"},"required":true}],"tags":["Organisation Management"],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrganisationBasic"}}},"description":""},"401":{"description":"Unauthorized"},"404":{"description":"Not Found"}}}}}}
```

## Update organisation details (full)

> Replace all editable organisation settings. Owner permissions required.

```json
{"openapi":"3.0.3","info":{"title":"Skhokho API","version":"v1.0"},"tags":[{"name":"Organisation Management","description":"Organisation, team members, and workspace management"}],"servers":[{"url":"https://skhokho.ai","description":"Production"},{"url":"http://102.209.118.152:8000/","description":"Local"},{"url":"https://dev.skhokho.ai","description":"Development"}],"security":[{"cookieAuth":[]},{"basicAuth":[]}],"components":{"securitySchemes":{"cookieAuth":{"type":"apiKey","in":"cookie","name":"sessionid"},"basicAuth":{"type":"http","scheme":"basic"}},"schemas":{"OrganisationOwnerRequest":{"type":"object","description":"Organisation model for owners (read/write, full surface).","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"name":{"type":"string","nullable":true},"language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans","",null],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese","nullable":true},"business_description":{"type":"string","nullable":true},"business_category":{"enum":["agriculture","cleaning","construction","consulting","creative","education","events","handyman","health","home_based","hospitality","it_support","legal","logistics","manufacturing","marketing","music","non_profit","online_retail","photography","printing","professional","travel","utilities","wholesale","writing","virtual_assistance","other","",null],"type":"string","description":"* `agriculture` - Agriculture and Farming\n* `cleaning` - Cleaning Services\n* `construction` - Construction and Real Estate Services\n* `consulting` - Consulting and Freelancing\n* `creative` - Creative and Design Services\n* `education` - Education and Tutoring Services\n* `events` - Entertainment and Events Planning\n* `handyman` - Handyman and Home Repair Services\n* `health` - Health and Wellness\n* `home_based` - Home-Based Businesses\n* `hospitality` - Hospitality and Tourism\n* `it_support` - IT and Software Support Services\n* `legal` - Legal and Financial Services\n* `logistics` - Logistics and Delivery Services\n* `manufacturing` - Manufacturing and Small-Scale Production\n* `marketing` - Marketing and Advertising Services\n* `music` - Music and Entertainment Services\n* `non_profit` - Non-Profit and Social Enterprises\n* `online_retail` - Online Retail and E-commerce\n* `photography` - Photography and Videography Services\n* `printing` - Printing and Copy Services\n* `professional` - Professional Services\n* `travel` - Travel Agencies\n* `utilities` - Utilities and Renewable Energy Services\n* `wholesale` - Wholesale and Distribution\n* `writing` - Writing and Editing Services\n* `virtual_assistance` - Virtual Assistance and Admin Support\n* `other` - Other","nullable":true},"other_category":{"type":"string","nullable":true},"how_did_you_hear_about_us":{"enum":["google","social_media","online_ads","word_of_mouth","email_marketing","event","blog","webinar","podcast","tv_radio","print_media","referral","other","",null],"type":"string","description":"* `google` - Google Search\n* `social_media` - Social Media\n* `online_ads` - Online Ads\n* `word_of_mouth` - Word of Mouth\n* `email_marketing` - Email Marketing\n* `event` - Event or Conference\n* `blog` - Blog or Article\n* `webinar` - Webinar or Online Workshop\n* `podcast` - Podcast\n* `tv_radio` - TV or Radio Advertisement\n* `print_media` - Print Media\n* `referral` - Referral Program\n* `other` - Other","nullable":true},"business_website":{"type":"string","format":"uri","nullable":true,"maxLength":300},"vat_number":{"type":"string","nullable":true,"description":"VAT/Tax registration number","maxLength":100},"setup_done":{"type":"boolean"},"address":{"allOf":[{"$ref":"#/components/schemas/AddressRequest"}],"nullable":true},"banking_information":{"allOf":[{"$ref":"#/components/schemas/BankingInformationRequest"}],"nullable":true},"default_currency":{"type":"string","minLength":1,"description":"Default currency code (ISO 4217) for financial transactions","maxLength":3},"default_vat_rate":{"type":"string","format":"decimal","pattern":"^-?\\d{0,3}(?:\\.\\d{0,2})?$","title":"Default VAT Rate (%)","description":"Default VAT/tax rate percentage for line items"},"financial_year_end":{"enum":["01-31","02-28","03-31","04-30","05-31","06-30","07-31","08-31","09-30","10-31","11-30","12-31"],"type":"string","description":"Month and day when the financial year ends (MM-DD format)\n\n* `01-31` - January 31\n* `02-28` - February 28\n* `03-31` - March 31\n* `04-30` - April 30\n* `05-31` - May 31\n* `06-30` - June 30\n* `07-31` - July 31\n* `08-31` - August 31\n* `09-30` - September 30\n* `10-31` - October 31\n* `11-30` - November 30\n* `12-31` - December 31"},"accounting_method":{"enum":["cash","accrual"],"type":"string","description":"Accounting method for financial reporting\n\n* `cash` - Cash Basis\n* `accrual` - Accrual Basis"},"reporting_currency":{"enum":["USD","EUR","GBP","JPY","CAD","AUD","CHF","CNY","INR","ZAR","KES","NGN","GHS","EGP","MAD","TZS","UGX","RWF","ETB","BWP"],"type":"string","description":"Primary currency for financial reporting and statements\n\n* `USD` - US Dollar (USD)\n* `EUR` - Euro (EUR)\n* `GBP` - British Pound (GBP)\n* `JPY` - Japanese Yen (JPY)\n* `CAD` - Canadian Dollar (CAD)\n* `AUD` - Australian Dollar (AUD)\n* `CHF` - Swiss Franc (CHF)\n* `CNY` - Chinese Yuan (CNY)\n* `INR` - Indian Rupee (INR)\n* `ZAR` - South African Rand (ZAR)\n* `KES` - Kenyan Shilling (KES)\n* `NGN` - Nigerian Naira (NGN)\n* `GHS` - Ghanaian Cedi (GHS)\n* `EGP` - Egyptian Pound (EGP)\n* `MAD` - Moroccan Dirham (MAD)\n* `TZS` - Tanzanian Shilling (TZS)\n* `UGX` - Ugandan Shilling (UGX)\n* `RWF` - Rwandan Franc (RWF)\n* `ETB` - Ethiopian Birr (ETB)\n* `BWP` - Botswana Pula (BWP)"},"enable_multi_currency":{"type":"boolean","description":"Enable multi-currency transactions and reporting"},"auto_close_financial_year":{"type":"boolean","description":"Automatically close financial year and create opening balances"},"retain_transaction_history":{"type":"boolean","description":"Keep detailed transaction history after year-end closing"},"financial_year_lock_date":{"type":"string","format":"date","nullable":true,"description":"Date before which transactions cannot be modified"},"contact_agent_active":{"type":"boolean","description":"Enable Contact Agent for managing contacts and client relationships"},"finance_agent_active":{"type":"boolean","description":"Enable Finance Agent for financial management and accounting"},"business_agent_active":{"type":"boolean","description":"Enable Business Agent for general business operations and strategy"},"asset_agent_active":{"type":"boolean","description":"Enable Asset Agent for asset management and inventory tracking"},"client_agent_active":{"type":"boolean","description":"Enable Client Agent for client relationship management"},"docs_agent_active":{"type":"boolean","description":"Enable Docs Agent for document management and file organization"},"notes_agent_active":{"type":"boolean","description":"Enable Notes Agent for note-taking and knowledge management"},"project_agent_active":{"type":"boolean","description":"Enable Project Agent for project management and task tracking"},"user_manager_agent_active":{"type":"boolean","description":"Enable User Manager Agent for user management and permissions"},"stripe_customer_id":{"type":"string","nullable":true,"description":"Stripe customer ID for billing and subscriptions","maxLength":100},"monthly_ai_credits_allocated":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Allocated (USD)","description":"Monthly AI credits allocated based on pricing tier"},"monthly_ai_credits_used":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Used (USD)","description":"AI credits used in current month"},"monthly_ai_credits_remaining":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Remaining (USD)","description":"AI credits remaining in current month"},"last_monthly_reset_date":{"type":"string","format":"date","nullable":true,"description":"Date when monthly AI credits were last reset"},"current_billing_cycle_start":{"type":"string","format":"date","nullable":true,"description":"Start date of current monthly billing cycle"},"current_billing_cycle_end":{"type":"string","format":"date","nullable":true,"description":"End date of current monthly billing cycle"},"purchased_seats":{"type":"integer","maximum":2147483647,"minimum":0,"description":"Number of additional seats purchased beyond the base plan"},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}}},"AddressRequest":{"type":"object","description":"Serializer for Address model with essential location fields.","properties":{"address_line_1":{"type":"string","nullable":true,"maxLength":300},"city":{"type":"string","nullable":true,"maxLength":300},"province_state":{"type":"string","nullable":true,"title":"Province/State","maxLength":300},"postal_code":{"type":"string","nullable":true,"maxLength":300}}},"BankingInformationRequest":{"type":"object","description":"Serializer for BankingInformation with PII hygiene:\n- `account_number` is write-only\n- expose masked `account_number_last4` for reads","properties":{"bank_name":{"type":"string","nullable":true,"maxLength":200},"account_number":{"type":"string","writeOnly":true},"branch_code":{"type":"string","nullable":true,"maxLength":50},"account_type":{"enum":["checking","savings","business","other","",null],"type":"string","description":"* `checking` - Checking\n* `savings` - Savings\n* `business` - Business\n* `other` - Other","nullable":true},"routing_number":{"type":"string","nullable":true,"maxLength":50},"swift_code":{"type":"string","nullable":true,"maxLength":50}}},"OrganisationOwner":{"type":"object","description":"Organisation model for owners (read/write, full surface).","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"name":{"type":"string","nullable":true},"language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans","",null],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese","nullable":true},"language_display":{"type":"string","readOnly":true},"business_description":{"type":"string","nullable":true},"business_category":{"enum":["agriculture","cleaning","construction","consulting","creative","education","events","handyman","health","home_based","hospitality","it_support","legal","logistics","manufacturing","marketing","music","non_profit","online_retail","photography","printing","professional","travel","utilities","wholesale","writing","virtual_assistance","other","",null],"type":"string","description":"* `agriculture` - Agriculture and Farming\n* `cleaning` - Cleaning Services\n* `construction` - Construction and Real Estate Services\n* `consulting` - Consulting and Freelancing\n* `creative` - Creative and Design Services\n* `education` - Education and Tutoring Services\n* `events` - Entertainment and Events Planning\n* `handyman` - Handyman and Home Repair Services\n* `health` - Health and Wellness\n* `home_based` - Home-Based Businesses\n* `hospitality` - Hospitality and Tourism\n* `it_support` - IT and Software Support Services\n* `legal` - Legal and Financial Services\n* `logistics` - Logistics and Delivery Services\n* `manufacturing` - Manufacturing and Small-Scale Production\n* `marketing` - Marketing and Advertising Services\n* `music` - Music and Entertainment Services\n* `non_profit` - Non-Profit and Social Enterprises\n* `online_retail` - Online Retail and E-commerce\n* `photography` - Photography and Videography Services\n* `printing` - Printing and Copy Services\n* `professional` - Professional Services\n* `travel` - Travel Agencies\n* `utilities` - Utilities and Renewable Energy Services\n* `wholesale` - Wholesale and Distribution\n* `writing` - Writing and Editing Services\n* `virtual_assistance` - Virtual Assistance and Admin Support\n* `other` - Other","nullable":true},"business_category_display":{"type":"string","readOnly":true},"other_category":{"type":"string","nullable":true},"how_did_you_hear_about_us":{"enum":["google","social_media","online_ads","word_of_mouth","email_marketing","event","blog","webinar","podcast","tv_radio","print_media","referral","other","",null],"type":"string","description":"* `google` - Google Search\n* `social_media` - Social Media\n* `online_ads` - Online Ads\n* `word_of_mouth` - Word of Mouth\n* `email_marketing` - Email Marketing\n* `event` - Event or Conference\n* `blog` - Blog or Article\n* `webinar` - Webinar or Online Workshop\n* `podcast` - Podcast\n* `tv_radio` - TV or Radio Advertisement\n* `print_media` - Print Media\n* `referral` - Referral Program\n* `other` - Other","nullable":true},"business_website":{"type":"string","format":"uri","nullable":true,"maxLength":300},"vat_number":{"type":"string","nullable":true,"description":"VAT/Tax registration number","maxLength":100},"logo_url":{"type":"string","nullable":true,"readOnly":true},"setup_done":{"type":"boolean"},"address":{"allOf":[{"$ref":"#/components/schemas/Address"}],"nullable":true},"banking_information":{"allOf":[{"$ref":"#/components/schemas/BankingInformation"}],"nullable":true},"owner":{"type":"object","additionalProperties":{},"nullable":true,"readOnly":true},"member_count":{"type":"integer","nullable":true,"readOnly":true},"default_currency":{"type":"string","description":"Default currency code (ISO 4217) for financial transactions","maxLength":3},"default_vat_rate":{"type":"string","format":"decimal","pattern":"^-?\\d{0,3}(?:\\.\\d{0,2})?$","title":"Default VAT Rate (%)","description":"Default VAT/tax rate percentage for line items"},"financial_year_end":{"enum":["01-31","02-28","03-31","04-30","05-31","06-30","07-31","08-31","09-30","10-31","11-30","12-31"],"type":"string","description":"Month and day when the financial year ends (MM-DD format)\n\n* `01-31` - January 31\n* `02-28` - February 28\n* `03-31` - March 31\n* `04-30` - April 30\n* `05-31` - May 31\n* `06-30` - June 30\n* `07-31` - July 31\n* `08-31` - August 31\n* `09-30` - September 30\n* `10-31` - October 31\n* `11-30` - November 30\n* `12-31` - December 31"},"financial_year_end_display":{"type":"string","readOnly":true},"accounting_method":{"enum":["cash","accrual"],"type":"string","description":"Accounting method for financial reporting\n\n* `cash` - Cash Basis\n* `accrual` - Accrual Basis"},"accounting_method_display":{"type":"string","readOnly":true},"reporting_currency":{"enum":["USD","EUR","GBP","JPY","CAD","AUD","CHF","CNY","INR","ZAR","KES","NGN","GHS","EGP","MAD","TZS","UGX","RWF","ETB","BWP"],"type":"string","description":"Primary currency for financial reporting and statements\n\n* `USD` - US Dollar (USD)\n* `EUR` - Euro (EUR)\n* `GBP` - British Pound (GBP)\n* `JPY` - Japanese Yen (JPY)\n* `CAD` - Canadian Dollar (CAD)\n* `AUD` - Australian Dollar (AUD)\n* `CHF` - Swiss Franc (CHF)\n* `CNY` - Chinese Yuan (CNY)\n* `INR` - Indian Rupee (INR)\n* `ZAR` - South African Rand (ZAR)\n* `KES` - Kenyan Shilling (KES)\n* `NGN` - Nigerian Naira (NGN)\n* `GHS` - Ghanaian Cedi (GHS)\n* `EGP` - Egyptian Pound (EGP)\n* `MAD` - Moroccan Dirham (MAD)\n* `TZS` - Tanzanian Shilling (TZS)\n* `UGX` - Ugandan Shilling (UGX)\n* `RWF` - Rwandan Franc (RWF)\n* `ETB` - Ethiopian Birr (ETB)\n* `BWP` - Botswana Pula (BWP)"},"reporting_currency_display":{"type":"string","readOnly":true},"enable_multi_currency":{"type":"boolean","description":"Enable multi-currency transactions and reporting"},"auto_close_financial_year":{"type":"boolean","description":"Automatically close financial year and create opening balances"},"retain_transaction_history":{"type":"boolean","description":"Keep detailed transaction history after year-end closing"},"financial_year_lock_date":{"type":"string","format":"date","nullable":true,"description":"Date before which transactions cannot be modified"},"current_financial_year_label":{"type":"string","nullable":true,"readOnly":true},"contact_agent_active":{"type":"boolean","description":"Enable Contact Agent for managing contacts and client relationships"},"finance_agent_active":{"type":"boolean","description":"Enable Finance Agent for financial management and accounting"},"business_agent_active":{"type":"boolean","description":"Enable Business Agent for general business operations and strategy"},"asset_agent_active":{"type":"boolean","description":"Enable Asset Agent for asset management and inventory tracking"},"client_agent_active":{"type":"boolean","description":"Enable Client Agent for client relationship management"},"docs_agent_active":{"type":"boolean","description":"Enable Docs Agent for document management and file organization"},"notes_agent_active":{"type":"boolean","description":"Enable Notes Agent for note-taking and knowledge management"},"project_agent_active":{"type":"boolean","description":"Enable Project Agent for project management and task tracking"},"user_manager_agent_active":{"type":"boolean","description":"Enable User Manager Agent for user management and permissions"},"stripe_customer_id":{"type":"string","nullable":true,"description":"Stripe customer ID for billing and subscriptions","maxLength":100},"monthly_ai_credits_allocated":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Allocated (USD)","description":"Monthly AI credits allocated based on pricing tier"},"monthly_ai_credits_used":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Used (USD)","description":"AI credits used in current month"},"monthly_ai_credits_remaining":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Remaining (USD)","description":"AI credits remaining in current month"},"last_monthly_reset_date":{"type":"string","format":"date","nullable":true,"description":"Date when monthly AI credits were last reset"},"current_billing_cycle_start":{"type":"string","format":"date","nullable":true,"description":"Start date of current monthly billing cycle"},"current_billing_cycle_end":{"type":"string","format":"date","nullable":true,"description":"End date of current monthly billing cycle"},"purchased_seats":{"type":"integer","maximum":2147483647,"minimum":0,"description":"Number of additional seats purchased beyond the base plan"},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}},"required":["accounting_method_display","business_category_display","current_financial_year_label","financial_year_end_display","language_display","logo_url","member_count","owner","reporting_currency_display"]},"Address":{"type":"object","description":"Serializer for Address model with essential location fields.","properties":{"address_line_1":{"type":"string","nullable":true,"maxLength":300},"city":{"type":"string","nullable":true,"maxLength":300},"province_state":{"type":"string","nullable":true,"title":"Province/State","maxLength":300},"postal_code":{"type":"string","nullable":true,"maxLength":300},"country_name":{"type":"string","readOnly":true}},"required":["country_name"]},"BankingInformation":{"type":"object","description":"Serializer for BankingInformation with PII hygiene:\n- `account_number` is write-only\n- expose masked `account_number_last4` for reads","properties":{"bank_name":{"type":"string","nullable":true,"maxLength":200},"account_number_last4":{"type":"string","nullable":true,"readOnly":true},"branch_code":{"type":"string","nullable":true,"maxLength":50},"account_type":{"enum":["checking","savings","business","other","",null],"type":"string","description":"* `checking` - Checking\n* `savings` - Savings\n* `business` - Business\n* `other` - Other","nullable":true},"routing_number":{"type":"string","nullable":true,"maxLength":50},"swift_code":{"type":"string","nullable":true,"maxLength":50},"date_created":{"type":"string","format":"date-time","readOnly":true},"last_updated":{"type":"string","format":"date-time","readOnly":true},"account_type_display":{"type":"string","readOnly":true}},"required":["account_number_last4","account_type_display","date_created","last_updated"]}}},"paths":{"/api/v1.0/organisation/{unique_id}/update/":{"put":{"operationId":"organisation_update_update","description":"Replace all editable organisation settings. Owner permissions required.","summary":"Update organisation details (full)","parameters":[{"in":"path","name":"unique_id","schema":{"type":"string"},"required":true}],"tags":["Organisation Management"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrganisationOwnerRequest"}},"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/OrganisationOwnerRequest"}},"multipart/form-data":{"schema":{"$ref":"#/components/schemas/OrganisationOwnerRequest"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrganisationOwner"}}},"description":""},"400":{"description":"Bad Request - invalid or missing fields"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"}}}}}}
```

## Update organisation details (partial)

> Apply a partial update to organisation settings. Provide only the fields to change.

```json
{"openapi":"3.0.3","info":{"title":"Skhokho API","version":"v1.0"},"tags":[{"name":"Organisation Management","description":"Organisation, team members, and workspace management"}],"servers":[{"url":"https://skhokho.ai","description":"Production"},{"url":"http://102.209.118.152:8000/","description":"Local"},{"url":"https://dev.skhokho.ai","description":"Development"}],"security":[{"cookieAuth":[]},{"basicAuth":[]}],"components":{"securitySchemes":{"cookieAuth":{"type":"apiKey","in":"cookie","name":"sessionid"},"basicAuth":{"type":"http","scheme":"basic"}},"schemas":{"PatchedOrganisationOwnerRequest":{"type":"object","description":"Organisation model for owners (read/write, full surface).","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"name":{"type":"string","nullable":true},"language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans","",null],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese","nullable":true},"business_description":{"type":"string","nullable":true},"business_category":{"enum":["agriculture","cleaning","construction","consulting","creative","education","events","handyman","health","home_based","hospitality","it_support","legal","logistics","manufacturing","marketing","music","non_profit","online_retail","photography","printing","professional","travel","utilities","wholesale","writing","virtual_assistance","other","",null],"type":"string","description":"* `agriculture` - Agriculture and Farming\n* `cleaning` - Cleaning Services\n* `construction` - Construction and Real Estate Services\n* `consulting` - Consulting and Freelancing\n* `creative` - Creative and Design Services\n* `education` - Education and Tutoring Services\n* `events` - Entertainment and Events Planning\n* `handyman` - Handyman and Home Repair Services\n* `health` - Health and Wellness\n* `home_based` - Home-Based Businesses\n* `hospitality` - Hospitality and Tourism\n* `it_support` - IT and Software Support Services\n* `legal` - Legal and Financial Services\n* `logistics` - Logistics and Delivery Services\n* `manufacturing` - Manufacturing and Small-Scale Production\n* `marketing` - Marketing and Advertising Services\n* `music` - Music and Entertainment Services\n* `non_profit` - Non-Profit and Social Enterprises\n* `online_retail` - Online Retail and E-commerce\n* `photography` - Photography and Videography Services\n* `printing` - Printing and Copy Services\n* `professional` - Professional Services\n* `travel` - Travel Agencies\n* `utilities` - Utilities and Renewable Energy Services\n* `wholesale` - Wholesale and Distribution\n* `writing` - Writing and Editing Services\n* `virtual_assistance` - Virtual Assistance and Admin Support\n* `other` - Other","nullable":true},"other_category":{"type":"string","nullable":true},"how_did_you_hear_about_us":{"enum":["google","social_media","online_ads","word_of_mouth","email_marketing","event","blog","webinar","podcast","tv_radio","print_media","referral","other","",null],"type":"string","description":"* `google` - Google Search\n* `social_media` - Social Media\n* `online_ads` - Online Ads\n* `word_of_mouth` - Word of Mouth\n* `email_marketing` - Email Marketing\n* `event` - Event or Conference\n* `blog` - Blog or Article\n* `webinar` - Webinar or Online Workshop\n* `podcast` - Podcast\n* `tv_radio` - TV or Radio Advertisement\n* `print_media` - Print Media\n* `referral` - Referral Program\n* `other` - Other","nullable":true},"business_website":{"type":"string","format":"uri","nullable":true,"maxLength":300},"vat_number":{"type":"string","nullable":true,"description":"VAT/Tax registration number","maxLength":100},"setup_done":{"type":"boolean"},"address":{"allOf":[{"$ref":"#/components/schemas/AddressRequest"}],"nullable":true},"banking_information":{"allOf":[{"$ref":"#/components/schemas/BankingInformationRequest"}],"nullable":true},"default_currency":{"type":"string","minLength":1,"description":"Default currency code (ISO 4217) for financial transactions","maxLength":3},"default_vat_rate":{"type":"string","format":"decimal","pattern":"^-?\\d{0,3}(?:\\.\\d{0,2})?$","title":"Default VAT Rate (%)","description":"Default VAT/tax rate percentage for line items"},"financial_year_end":{"enum":["01-31","02-28","03-31","04-30","05-31","06-30","07-31","08-31","09-30","10-31","11-30","12-31"],"type":"string","description":"Month and day when the financial year ends (MM-DD format)\n\n* `01-31` - January 31\n* `02-28` - February 28\n* `03-31` - March 31\n* `04-30` - April 30\n* `05-31` - May 31\n* `06-30` - June 30\n* `07-31` - July 31\n* `08-31` - August 31\n* `09-30` - September 30\n* `10-31` - October 31\n* `11-30` - November 30\n* `12-31` - December 31"},"accounting_method":{"enum":["cash","accrual"],"type":"string","description":"Accounting method for financial reporting\n\n* `cash` - Cash Basis\n* `accrual` - Accrual Basis"},"reporting_currency":{"enum":["USD","EUR","GBP","JPY","CAD","AUD","CHF","CNY","INR","ZAR","KES","NGN","GHS","EGP","MAD","TZS","UGX","RWF","ETB","BWP"],"type":"string","description":"Primary currency for financial reporting and statements\n\n* `USD` - US Dollar (USD)\n* `EUR` - Euro (EUR)\n* `GBP` - British Pound (GBP)\n* `JPY` - Japanese Yen (JPY)\n* `CAD` - Canadian Dollar (CAD)\n* `AUD` - Australian Dollar (AUD)\n* `CHF` - Swiss Franc (CHF)\n* `CNY` - Chinese Yuan (CNY)\n* `INR` - Indian Rupee (INR)\n* `ZAR` - South African Rand (ZAR)\n* `KES` - Kenyan Shilling (KES)\n* `NGN` - Nigerian Naira (NGN)\n* `GHS` - Ghanaian Cedi (GHS)\n* `EGP` - Egyptian Pound (EGP)\n* `MAD` - Moroccan Dirham (MAD)\n* `TZS` - Tanzanian Shilling (TZS)\n* `UGX` - Ugandan Shilling (UGX)\n* `RWF` - Rwandan Franc (RWF)\n* `ETB` - Ethiopian Birr (ETB)\n* `BWP` - Botswana Pula (BWP)"},"enable_multi_currency":{"type":"boolean","description":"Enable multi-currency transactions and reporting"},"auto_close_financial_year":{"type":"boolean","description":"Automatically close financial year and create opening balances"},"retain_transaction_history":{"type":"boolean","description":"Keep detailed transaction history after year-end closing"},"financial_year_lock_date":{"type":"string","format":"date","nullable":true,"description":"Date before which transactions cannot be modified"},"contact_agent_active":{"type":"boolean","description":"Enable Contact Agent for managing contacts and client relationships"},"finance_agent_active":{"type":"boolean","description":"Enable Finance Agent for financial management and accounting"},"business_agent_active":{"type":"boolean","description":"Enable Business Agent for general business operations and strategy"},"asset_agent_active":{"type":"boolean","description":"Enable Asset Agent for asset management and inventory tracking"},"client_agent_active":{"type":"boolean","description":"Enable Client Agent for client relationship management"},"docs_agent_active":{"type":"boolean","description":"Enable Docs Agent for document management and file organization"},"notes_agent_active":{"type":"boolean","description":"Enable Notes Agent for note-taking and knowledge management"},"project_agent_active":{"type":"boolean","description":"Enable Project Agent for project management and task tracking"},"user_manager_agent_active":{"type":"boolean","description":"Enable User Manager Agent for user management and permissions"},"stripe_customer_id":{"type":"string","nullable":true,"description":"Stripe customer ID for billing and subscriptions","maxLength":100},"monthly_ai_credits_allocated":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Allocated (USD)","description":"Monthly AI credits allocated based on pricing tier"},"monthly_ai_credits_used":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Used (USD)","description":"AI credits used in current month"},"monthly_ai_credits_remaining":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Remaining (USD)","description":"AI credits remaining in current month"},"last_monthly_reset_date":{"type":"string","format":"date","nullable":true,"description":"Date when monthly AI credits were last reset"},"current_billing_cycle_start":{"type":"string","format":"date","nullable":true,"description":"Start date of current monthly billing cycle"},"current_billing_cycle_end":{"type":"string","format":"date","nullable":true,"description":"End date of current monthly billing cycle"},"purchased_seats":{"type":"integer","maximum":2147483647,"minimum":0,"description":"Number of additional seats purchased beyond the base plan"},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}}},"AddressRequest":{"type":"object","description":"Serializer for Address model with essential location fields.","properties":{"address_line_1":{"type":"string","nullable":true,"maxLength":300},"city":{"type":"string","nullable":true,"maxLength":300},"province_state":{"type":"string","nullable":true,"title":"Province/State","maxLength":300},"postal_code":{"type":"string","nullable":true,"maxLength":300}}},"BankingInformationRequest":{"type":"object","description":"Serializer for BankingInformation with PII hygiene:\n- `account_number` is write-only\n- expose masked `account_number_last4` for reads","properties":{"bank_name":{"type":"string","nullable":true,"maxLength":200},"account_number":{"type":"string","writeOnly":true},"branch_code":{"type":"string","nullable":true,"maxLength":50},"account_type":{"enum":["checking","savings","business","other","",null],"type":"string","description":"* `checking` - Checking\n* `savings` - Savings\n* `business` - Business\n* `other` - Other","nullable":true},"routing_number":{"type":"string","nullable":true,"maxLength":50},"swift_code":{"type":"string","nullable":true,"maxLength":50}}},"OrganisationOwner":{"type":"object","description":"Organisation model for owners (read/write, full surface).","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"name":{"type":"string","nullable":true},"language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans","",null],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese","nullable":true},"language_display":{"type":"string","readOnly":true},"business_description":{"type":"string","nullable":true},"business_category":{"enum":["agriculture","cleaning","construction","consulting","creative","education","events","handyman","health","home_based","hospitality","it_support","legal","logistics","manufacturing","marketing","music","non_profit","online_retail","photography","printing","professional","travel","utilities","wholesale","writing","virtual_assistance","other","",null],"type":"string","description":"* `agriculture` - Agriculture and Farming\n* `cleaning` - Cleaning Services\n* `construction` - Construction and Real Estate Services\n* `consulting` - Consulting and Freelancing\n* `creative` - Creative and Design Services\n* `education` - Education and Tutoring Services\n* `events` - Entertainment and Events Planning\n* `handyman` - Handyman and Home Repair Services\n* `health` - Health and Wellness\n* `home_based` - Home-Based Businesses\n* `hospitality` - Hospitality and Tourism\n* `it_support` - IT and Software Support Services\n* `legal` - Legal and Financial Services\n* `logistics` - Logistics and Delivery Services\n* `manufacturing` - Manufacturing and Small-Scale Production\n* `marketing` - Marketing and Advertising Services\n* `music` - Music and Entertainment Services\n* `non_profit` - Non-Profit and Social Enterprises\n* `online_retail` - Online Retail and E-commerce\n* `photography` - Photography and Videography Services\n* `printing` - Printing and Copy Services\n* `professional` - Professional Services\n* `travel` - Travel Agencies\n* `utilities` - Utilities and Renewable Energy Services\n* `wholesale` - Wholesale and Distribution\n* `writing` - Writing and Editing Services\n* `virtual_assistance` - Virtual Assistance and Admin Support\n* `other` - Other","nullable":true},"business_category_display":{"type":"string","readOnly":true},"other_category":{"type":"string","nullable":true},"how_did_you_hear_about_us":{"enum":["google","social_media","online_ads","word_of_mouth","email_marketing","event","blog","webinar","podcast","tv_radio","print_media","referral","other","",null],"type":"string","description":"* `google` - Google Search\n* `social_media` - Social Media\n* `online_ads` - Online Ads\n* `word_of_mouth` - Word of Mouth\n* `email_marketing` - Email Marketing\n* `event` - Event or Conference\n* `blog` - Blog or Article\n* `webinar` - Webinar or Online Workshop\n* `podcast` - Podcast\n* `tv_radio` - TV or Radio Advertisement\n* `print_media` - Print Media\n* `referral` - Referral Program\n* `other` - Other","nullable":true},"business_website":{"type":"string","format":"uri","nullable":true,"maxLength":300},"vat_number":{"type":"string","nullable":true,"description":"VAT/Tax registration number","maxLength":100},"logo_url":{"type":"string","nullable":true,"readOnly":true},"setup_done":{"type":"boolean"},"address":{"allOf":[{"$ref":"#/components/schemas/Address"}],"nullable":true},"banking_information":{"allOf":[{"$ref":"#/components/schemas/BankingInformation"}],"nullable":true},"owner":{"type":"object","additionalProperties":{},"nullable":true,"readOnly":true},"member_count":{"type":"integer","nullable":true,"readOnly":true},"default_currency":{"type":"string","description":"Default currency code (ISO 4217) for financial transactions","maxLength":3},"default_vat_rate":{"type":"string","format":"decimal","pattern":"^-?\\d{0,3}(?:\\.\\d{0,2})?$","title":"Default VAT Rate (%)","description":"Default VAT/tax rate percentage for line items"},"financial_year_end":{"enum":["01-31","02-28","03-31","04-30","05-31","06-30","07-31","08-31","09-30","10-31","11-30","12-31"],"type":"string","description":"Month and day when the financial year ends (MM-DD format)\n\n* `01-31` - January 31\n* `02-28` - February 28\n* `03-31` - March 31\n* `04-30` - April 30\n* `05-31` - May 31\n* `06-30` - June 30\n* `07-31` - July 31\n* `08-31` - August 31\n* `09-30` - September 30\n* `10-31` - October 31\n* `11-30` - November 30\n* `12-31` - December 31"},"financial_year_end_display":{"type":"string","readOnly":true},"accounting_method":{"enum":["cash","accrual"],"type":"string","description":"Accounting method for financial reporting\n\n* `cash` - Cash Basis\n* `accrual` - Accrual Basis"},"accounting_method_display":{"type":"string","readOnly":true},"reporting_currency":{"enum":["USD","EUR","GBP","JPY","CAD","AUD","CHF","CNY","INR","ZAR","KES","NGN","GHS","EGP","MAD","TZS","UGX","RWF","ETB","BWP"],"type":"string","description":"Primary currency for financial reporting and statements\n\n* `USD` - US Dollar (USD)\n* `EUR` - Euro (EUR)\n* `GBP` - British Pound (GBP)\n* `JPY` - Japanese Yen (JPY)\n* `CAD` - Canadian Dollar (CAD)\n* `AUD` - Australian Dollar (AUD)\n* `CHF` - Swiss Franc (CHF)\n* `CNY` - Chinese Yuan (CNY)\n* `INR` - Indian Rupee (INR)\n* `ZAR` - South African Rand (ZAR)\n* `KES` - Kenyan Shilling (KES)\n* `NGN` - Nigerian Naira (NGN)\n* `GHS` - Ghanaian Cedi (GHS)\n* `EGP` - Egyptian Pound (EGP)\n* `MAD` - Moroccan Dirham (MAD)\n* `TZS` - Tanzanian Shilling (TZS)\n* `UGX` - Ugandan Shilling (UGX)\n* `RWF` - Rwandan Franc (RWF)\n* `ETB` - Ethiopian Birr (ETB)\n* `BWP` - Botswana Pula (BWP)"},"reporting_currency_display":{"type":"string","readOnly":true},"enable_multi_currency":{"type":"boolean","description":"Enable multi-currency transactions and reporting"},"auto_close_financial_year":{"type":"boolean","description":"Automatically close financial year and create opening balances"},"retain_transaction_history":{"type":"boolean","description":"Keep detailed transaction history after year-end closing"},"financial_year_lock_date":{"type":"string","format":"date","nullable":true,"description":"Date before which transactions cannot be modified"},"current_financial_year_label":{"type":"string","nullable":true,"readOnly":true},"contact_agent_active":{"type":"boolean","description":"Enable Contact Agent for managing contacts and client relationships"},"finance_agent_active":{"type":"boolean","description":"Enable Finance Agent for financial management and accounting"},"business_agent_active":{"type":"boolean","description":"Enable Business Agent for general business operations and strategy"},"asset_agent_active":{"type":"boolean","description":"Enable Asset Agent for asset management and inventory tracking"},"client_agent_active":{"type":"boolean","description":"Enable Client Agent for client relationship management"},"docs_agent_active":{"type":"boolean","description":"Enable Docs Agent for document management and file organization"},"notes_agent_active":{"type":"boolean","description":"Enable Notes Agent for note-taking and knowledge management"},"project_agent_active":{"type":"boolean","description":"Enable Project Agent for project management and task tracking"},"user_manager_agent_active":{"type":"boolean","description":"Enable User Manager Agent for user management and permissions"},"stripe_customer_id":{"type":"string","nullable":true,"description":"Stripe customer ID for billing and subscriptions","maxLength":100},"monthly_ai_credits_allocated":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Allocated (USD)","description":"Monthly AI credits allocated based on pricing tier"},"monthly_ai_credits_used":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Used (USD)","description":"AI credits used in current month"},"monthly_ai_credits_remaining":{"type":"string","format":"decimal","pattern":"^-?\\d{0,4}(?:\\.\\d{0,2})?$","title":"Monthly AI Credits Remaining (USD)","description":"AI credits remaining in current month"},"last_monthly_reset_date":{"type":"string","format":"date","nullable":true,"description":"Date when monthly AI credits were last reset"},"current_billing_cycle_start":{"type":"string","format":"date","nullable":true,"description":"Start date of current monthly billing cycle"},"current_billing_cycle_end":{"type":"string","format":"date","nullable":true,"description":"End date of current monthly billing cycle"},"purchased_seats":{"type":"integer","maximum":2147483647,"minimum":0,"description":"Number of additional seats purchased beyond the base plan"},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}},"required":["accounting_method_display","business_category_display","current_financial_year_label","financial_year_end_display","language_display","logo_url","member_count","owner","reporting_currency_display"]},"Address":{"type":"object","description":"Serializer for Address model with essential location fields.","properties":{"address_line_1":{"type":"string","nullable":true,"maxLength":300},"city":{"type":"string","nullable":true,"maxLength":300},"province_state":{"type":"string","nullable":true,"title":"Province/State","maxLength":300},"postal_code":{"type":"string","nullable":true,"maxLength":300},"country_name":{"type":"string","readOnly":true}},"required":["country_name"]},"BankingInformation":{"type":"object","description":"Serializer for BankingInformation with PII hygiene:\n- `account_number` is write-only\n- expose masked `account_number_last4` for reads","properties":{"bank_name":{"type":"string","nullable":true,"maxLength":200},"account_number_last4":{"type":"string","nullable":true,"readOnly":true},"branch_code":{"type":"string","nullable":true,"maxLength":50},"account_type":{"enum":["checking","savings","business","other","",null],"type":"string","description":"* `checking` - Checking\n* `savings` - Savings\n* `business` - Business\n* `other` - Other","nullable":true},"routing_number":{"type":"string","nullable":true,"maxLength":50},"swift_code":{"type":"string","nullable":true,"maxLength":50},"date_created":{"type":"string","format":"date-time","readOnly":true},"last_updated":{"type":"string","format":"date-time","readOnly":true},"account_type_display":{"type":"string","readOnly":true}},"required":["account_number_last4","account_type_display","date_created","last_updated"]}}},"paths":{"/api/v1.0/organisation/{unique_id}/update/":{"patch":{"operationId":"organisation_update_partial_update","description":"Apply a partial update to organisation settings. Provide only the fields to change.","summary":"Update organisation details (partial)","parameters":[{"in":"path","name":"unique_id","schema":{"type":"string"},"required":true}],"tags":["Organisation Management"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchedOrganisationOwnerRequest"}},"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/PatchedOrganisationOwnerRequest"}},"multipart/form-data":{"schema":{"$ref":"#/components/schemas/PatchedOrganisationOwnerRequest"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrganisationOwner"}}},"description":""},"400":{"description":"Bad Request - invalid fields"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"}}}}}}
```

## List organisation members

> Get all members of an organisation

```json
{"openapi":"3.0.3","info":{"title":"Skhokho API","version":"v1.0"},"tags":[{"name":"Organisation Management","description":"Organisation, team members, and workspace management"}],"servers":[{"url":"https://skhokho.ai","description":"Production"},{"url":"http://102.209.118.152:8000/","description":"Local"},{"url":"https://dev.skhokho.ai","description":"Development"}],"security":[{"cookieAuth":[]},{"basicAuth":[]}],"components":{"securitySchemes":{"cookieAuth":{"type":"apiKey","in":"cookie","name":"sessionid"},"basicAuth":{"type":"http","scheme":"basic"}},"schemas":{"Person":{"type":"object","description":"Person model with nested user information and related data.\nSupports reading + writing nested Address/Employee/Banking.","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"user":{"allOf":[{"$ref":"#/components/schemas/User"}],"readOnly":true},"current_language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans"],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese"},"language_display":{"type":"string","readOnly":true},"profile_picture_url":{"type":"string","format":"uri","nullable":true,"readOnly":true},"job_title":{"type":"string","nullable":true,"maxLength":300},"is_owner":{"type":"boolean"},"user_type":{"enum":["user","employee"],"type":"string","description":"* `user` - Regular User\n* `employee` - Employee"},"user_type_display":{"type":"string","readOnly":true},"organisation_details":{"type":"object","additionalProperties":{},"nullable":true,"readOnly":true},"address":{"allOf":[{"$ref":"#/components/schemas/Address"}],"nullable":true},"banking_information":{"allOf":[{"$ref":"#/components/schemas/BankingInformation"}],"nullable":true},"employee_information":{"allOf":[{"$ref":"#/components/schemas/EmployeeInformation"}],"nullable":true},"last_login":{"type":"string","format":"date-time","nullable":true},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}},"required":["language_display","organisation_details","profile_picture_url","user","user_type_display"]},"User":{"type":"object","properties":{"first_name":{"type":"string","readOnly":true},"last_name":{"type":"string","readOnly":true},"email":{"type":"string","format":"email","readOnly":true,"title":"Email address"}},"required":["email","first_name","last_name"]},"Address":{"type":"object","description":"Serializer for Address model with essential location fields.","properties":{"address_line_1":{"type":"string","nullable":true,"maxLength":300},"city":{"type":"string","nullable":true,"maxLength":300},"province_state":{"type":"string","nullable":true,"title":"Province/State","maxLength":300},"postal_code":{"type":"string","nullable":true,"maxLength":300},"country_name":{"type":"string","readOnly":true}},"required":["country_name"]},"BankingInformation":{"type":"object","description":"Serializer for BankingInformation with PII hygiene:\n- `account_number` is write-only\n- expose masked `account_number_last4` for reads","properties":{"bank_name":{"type":"string","nullable":true,"maxLength":200},"account_number_last4":{"type":"string","nullable":true,"readOnly":true},"branch_code":{"type":"string","nullable":true,"maxLength":50},"account_type":{"enum":["checking","savings","business","other","",null],"type":"string","description":"* `checking` - Checking\n* `savings` - Savings\n* `business` - Business\n* `other` - Other","nullable":true},"routing_number":{"type":"string","nullable":true,"maxLength":50},"swift_code":{"type":"string","nullable":true,"maxLength":50},"date_created":{"type":"string","format":"date-time","readOnly":true},"last_updated":{"type":"string","format":"date-time","readOnly":true},"account_type_display":{"type":"string","readOnly":true}},"required":["account_number_last4","account_type_display","date_created","last_updated"]},"EmployeeInformation":{"type":"object","description":"Serializer for EmployeeInformation with complete employee data.","properties":{"id_number":{"type":"string","nullable":true,"maxLength":100},"employee_number":{"type":"string","nullable":true,"maxLength":100},"tax_number":{"type":"string","nullable":true,"maxLength":100},"phone_number":{"type":"string","nullable":true,"maxLength":200},"birthday":{"type":"string","format":"date","nullable":true},"linkedin_url":{"type":"string","format":"uri","nullable":true,"title":"LinkedIn Profile","maxLength":300},"emergency_contact":{"type":"string","nullable":true,"maxLength":300},"emergency_phone":{"type":"string","nullable":true,"maxLength":200},"medical_aid_number":{"type":"string","nullable":true,"maxLength":300},"medical_aid_provider":{"type":"string","nullable":true,"maxLength":300},"medical_aid_plan":{"type":"string","nullable":true,"maxLength":300},"medical_conditions":{"type":"string","nullable":true},"allergies":{"type":"string","nullable":true},"medications":{"type":"string","nullable":true},"start_date":{"type":"string","format":"date","nullable":true},"end_date":{"type":"string","format":"date","nullable":true},"is_active_employee":{"type":"boolean"},"date_created":{"type":"string","format":"date-time","readOnly":true},"last_updated":{"type":"string","format":"date-time","readOnly":true}},"required":["date_created","last_updated"]}}},"paths":{"/api/v1.0/organisation/{unique_id}/people/":{"get":{"operationId":"organisation_people_list","description":"Get all members of an organisation","summary":"List organisation members","parameters":[{"in":"path","name":"unique_id","schema":{"type":"string"},"required":true}],"tags":["Organisation Management"],"responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Person"}}}},"description":""}}}}}}
```

## Get person details

> Get detailed information about a specific person in an organisation

```json
{"openapi":"3.0.3","info":{"title":"Skhokho API","version":"v1.0"},"tags":[{"name":"Organisation Management","description":"Organisation, team members, and workspace management"}],"servers":[{"url":"https://skhokho.ai","description":"Production"},{"url":"http://102.209.118.152:8000/","description":"Local"},{"url":"https://dev.skhokho.ai","description":"Development"}],"security":[{"cookieAuth":[]},{"basicAuth":[]}],"components":{"securitySchemes":{"cookieAuth":{"type":"apiKey","in":"cookie","name":"sessionid"},"basicAuth":{"type":"http","scheme":"basic"}},"schemas":{"Person":{"type":"object","description":"Person model with nested user information and related data.\nSupports reading + writing nested Address/Employee/Banking.","properties":{"unique_id":{"type":"string","nullable":true,"maxLength":100},"user":{"allOf":[{"$ref":"#/components/schemas/User"}],"readOnly":true},"current_language":{"enum":["en","sw","de","es","hi","ar","ko","pt","af","el","fr","ta","ru","zh-hans"],"type":"string","description":"* `en` - English\n* `sw` - Swahili\n* `de` - German\n* `es` - Spanish\n* `hi` - Hindi\n* `ar` - Arabic\n* `ko` - Korean\n* `pt` - Portuguese\n* `af` - Afrikaans\n* `el` - Greek\n* `fr` - French\n* `ta` - Tamil\n* `ru` - Russian\n* `zh-hans` - Simplified Chinese"},"language_display":{"type":"string","readOnly":true},"profile_picture_url":{"type":"string","format":"uri","nullable":true,"readOnly":true},"job_title":{"type":"string","nullable":true,"maxLength":300},"is_owner":{"type":"boolean"},"user_type":{"enum":["user","employee"],"type":"string","description":"* `user` - Regular User\n* `employee` - Employee"},"user_type_display":{"type":"string","readOnly":true},"organisation_details":{"type":"object","additionalProperties":{},"nullable":true,"readOnly":true},"address":{"allOf":[{"$ref":"#/components/schemas/Address"}],"nullable":true},"banking_information":{"allOf":[{"$ref":"#/components/schemas/BankingInformation"}],"nullable":true},"employee_information":{"allOf":[{"$ref":"#/components/schemas/EmployeeInformation"}],"nullable":true},"last_login":{"type":"string","format":"date-time","nullable":true},"date_created":{"type":"string","format":"date-time","nullable":true},"last_updated":{"type":"string","format":"date-time","nullable":true}},"required":["language_display","organisation_details","profile_picture_url","user","user_type_display"]},"User":{"type":"object","properties":{"first_name":{"type":"string","readOnly":true},"last_name":{"type":"string","readOnly":true},"email":{"type":"string","format":"email","readOnly":true,"title":"Email address"}},"required":["email","first_name","last_name"]},"Address":{"type":"object","description":"Serializer for Address model with essential location fields.","properties":{"address_line_1":{"type":"string","nullable":true,"maxLength":300},"city":{"type":"string","nullable":true,"maxLength":300},"province_state":{"type":"string","nullable":true,"title":"Province/State","maxLength":300},"postal_code":{"type":"string","nullable":true,"maxLength":300},"country_name":{"type":"string","readOnly":true}},"required":["country_name"]},"BankingInformation":{"type":"object","description":"Serializer for BankingInformation with PII hygiene:\n- `account_number` is write-only\n- expose masked `account_number_last4` for reads","properties":{"bank_name":{"type":"string","nullable":true,"maxLength":200},"account_number_last4":{"type":"string","nullable":true,"readOnly":true},"branch_code":{"type":"string","nullable":true,"maxLength":50},"account_type":{"enum":["checking","savings","business","other","",null],"type":"string","description":"* `checking` - Checking\n* `savings` - Savings\n* `business` - Business\n* `other` - Other","nullable":true},"routing_number":{"type":"string","nullable":true,"maxLength":50},"swift_code":{"type":"string","nullable":true,"maxLength":50},"date_created":{"type":"string","format":"date-time","readOnly":true},"last_updated":{"type":"string","format":"date-time","readOnly":true},"account_type_display":{"type":"string","readOnly":true}},"required":["account_number_last4","account_type_display","date_created","last_updated"]},"EmployeeInformation":{"type":"object","description":"Serializer for EmployeeInformation with complete employee data.","properties":{"id_number":{"type":"string","nullable":true,"maxLength":100},"employee_number":{"type":"string","nullable":true,"maxLength":100},"tax_number":{"type":"string","nullable":true,"maxLength":100},"phone_number":{"type":"string","nullable":true,"maxLength":200},"birthday":{"type":"string","format":"date","nullable":true},"linkedin_url":{"type":"string","format":"uri","nullable":true,"title":"LinkedIn Profile","maxLength":300},"emergency_contact":{"type":"string","nullable":true,"maxLength":300},"emergency_phone":{"type":"string","nullable":true,"maxLength":200},"medical_aid_number":{"type":"string","nullable":true,"maxLength":300},"medical_aid_provider":{"type":"string","nullable":true,"maxLength":300},"medical_aid_plan":{"type":"string","nullable":true,"maxLength":300},"medical_conditions":{"type":"string","nullable":true},"allergies":{"type":"string","nullable":true},"medications":{"type":"string","nullable":true},"start_date":{"type":"string","format":"date","nullable":true},"end_date":{"type":"string","format":"date","nullable":true},"is_active_employee":{"type":"boolean"},"date_created":{"type":"string","format":"date-time","readOnly":true},"last_updated":{"type":"string","format":"date-time","readOnly":true}},"required":["date_created","last_updated"]}}},"paths":{"/api/v1.0/organisation/{unique_id}/person/{user_unique_id}/":{"get":{"operationId":"organisation_person_retrieve","description":"Get detailed information about a specific person in an organisation","summary":"Get person details","parameters":[{"in":"path","name":"unique_id","schema":{"type":"string"},"required":true},{"in":"path","name":"user_unique_id","schema":{"type":"string"},"required":true}],"tags":["Organisation Management"],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Person"}}},"description":""}}}}}}
```
