how create a organization and bucket in influxdb with python

how create a organization and bucket in influxdb with python?
i have a python script for creating a org and bucket in influx db but it wont work and return unauthorized response

can any body help me in this issue with influxdb apis?

HTTP response body: 
{ 	"code": "unauthorized", 	"message": "write:orgs is unauthorized" }

Python Code:

from influxdb_client import InfluxDBClient, BucketRetentionRules
from influxdb_client.rest import ApiException

def create_org_and_bucket(url, token, org_name, bucket_name, bucket_retention_days):
    # Convert retention days to seconds
    if bucket_retention_days == -1:
        bucket_retention_seconds = None  # No expiration
    else:
        bucket_retention_seconds = bucket_retention_days * 86400  # Convert days to seconds

    # Connect to InfluxDB
    client = InfluxDBClient(url=url, token=token)
    orgs_api = client.organizations_api()
    buckets_api = client.buckets_api()

    try:
        # Create organization
        org = orgs_api.create_organization(name=org_name)
        print(f"Organization '{org_name}' created successfully.")

        try:
            # Create bucket
            if bucket_retention_seconds is None:
                retention_rules = []
            else:
                retention_rules = [BucketRetentionRules(type="expire", every_seconds=bucket_retention_seconds)]

            bucket = buckets_api.create_bucket(name=bucket_name, org_id=org.id, retention_rules=retention_rules)
            print(f"Bucket '{bucket_name}' in organization '{org_name}' created successfully.")
            return org, bucket

        except ApiException as e:
            # If bucket creation fails, delete the created organization
            print(f"Error creating bucket: {e}")
            orgs_api.delete_organizations_id(org.id)
            print(f"Rolled back organization '{org_name}'.")
            return False

    except ApiException as e:
        print(f"Error creating organization: {e}")
        return False

    finally:
        # Close the connection to InfluxDB
        client.close()

url = "http://localhost:8086/"
token = ""
org_name = input("org name: ")
bucket_name = input("bucket name: ")
bucket_retention_days = -1

result = create_org_and_bucket(url, token, org_name, bucket_name, bucket_retention_days)
if result:
    org, bucket = result
    print(f"Successfully created organization '{org.name}' and bucket '{bucket.name}'.")
else:
    print("Failed to create organization and bucket.")

i try this and also ask gpt and gemini but it wont work and returns same error

The error message you’re receiving suggests that the token you’re using doesn’t have the necessary permissions to create organizations. Can you create a new token with all permissions “All Access API Token” and try with that?