U viR @s0dZddlmZmZmZmZGdddeZdS)z An organization is a workspace for a group of users. All dashboards, tasks, buckets, members, etc., belong to an organization. )OrganizationsService UsersService OrganizationPatchOrganizationRequestc@sbeZdZdZddZddZddZdd Zdee e d d d Z e e dddZ edddZ d S)OrganizationsApiz+Implementation for '/api/v2/orgs' endpoint.cCs"||_t|j|_t|j|_dS)zInitialize defaults.N)Z_influxdb_clientrZ api_client_organizations_servicer_users_service)selfinfluxdb_clientr Y/opt/alt/python38/lib/python3.8/site-packages/influxdb_client/client/organizations_api.py__init__ s zOrganizationsApi.__init__cCs|j}|S)z&Return the current authenticated user.)rZget_me)r userr r r mes zOrganizationsApi.mecCs|jj|dS)zRetrieve an organization.org_id)rZ get_orgs_idr rr r r find_organizationsz"OrganizationsApi.find_organizationcKs|jjf|jS)a List all organizations. :key int offset: Offset for pagination :key int limit: Limit for pagination :key bool descending: :key str org: Filter organizations to a specific organization name. :key str org_id: Filter organizations to a specific organization ID. :key str user_id: Filter organizations to a specific user ID. )rZget_orgsZorgs)r kwargsr r r find_organizationss z#OrganizationsApi.find_organizationsN)name organizationreturncCs |dkrt|d}|jj|dS)zCreate an organization.N)r)Zpost_organization_request)rrZ post_orgs)r rrr r r create_organization)s z$OrganizationsApi.create_organization)rrcCs"t|j|jd}|jj|j|dS)zUpdate an organization. :param organization: Organization update to apply (required) :return: Organization )r description)rZpatch_organization_request)rrrrZ patch_orgs_idid)r rrequestr r r update_organization/sz$OrganizationsApi.update_organizationrcCs|jj|dS)zDelete an organization.r)rZdelete_orgs_idrr r r delete_organization:sz$OrganizationsApi.delete_organization)NN) __name__ __module__ __qualname____doc__r rrrstrrrrrr r r r r s  rN)r"r rrrrobjectrr r r r s