{"id":28068,"library":"pulumi-pulumiservice","title":"Pulumi Service Provider","description":"A native Pulumi package for managing Pulumi Cloud resources (e.g., stacks, environments, teams, webhooks, OIDC providers, RBAC roles). Current version 0.39.0, requires Python >=3.9. Release cadence: ~monthly.","status":"active","version":"0.39.0","language":"python","source_language":"en","source_url":"https://github.com/pulumi/pulumi-pulumiservice","tags":["pulumi","pulumi-service","infrastructure","cloud"],"install":[{"cmd":"pip install pulumi-pulumiservice","lang":"bash","label":"PyPI install"}],"dependencies":[{"reason":"Runtime dependency for Pulumi SDK integration","package":"pulumi","optional":false}],"imports":[{"note":"Provider is an internal class; use the top-level module.","wrong":"from pulumi_pulumiservice import Provider","symbol":"PulumiServiceProvider","correct":"import pulumi_pulumiservice as pulumiservice"},{"note":"Use direct import from the top-level module.","wrong":"import pulumi_pulumiservice.Stack as Stack","symbol":"Stack","correct":"from pulumi_pulumiservice import Stack"},{"note":null,"wrong":null,"symbol":"Environment","correct":"from pulumi_pulumiservice import Environment"}],"quickstart":{"code":"import pulumi\nimport pulumi_pulumiservice as pulumiservice\n\nconfig = pulumi.Config()\naccess_token = config.require('pulumi-access-token')\n\nstack = pulumiservice.Stack('my-stack',\n    org_name='my-org',\n    project_name='my-project',\n    stack_name='dev',\n    opts=pulumi.ResourceOptions(provider=pulumiservice.Provider(access_token=access_token))\n)\n\npulumi.export('stack_id', stack.id)","lang":"python","description":"Create a Pulumi Cloud stack resource."},"warnings":[{"fix":"Use the new PolicyGroupPolicyPackReference and PolicyGroupStackReference types.","message":"In v0.33.0, PolicyGroup resource inputs changed: 'policyPacks' and 'stacks' items types changed from 'object' to specific references. Code using raw dicts will fail.","severity":"breaking","affected_versions":">=0.33.0"},{"fix":"Update all OrganizationRole permissions to use 'kind' instead of '__type'.","message":"In v0.38.0, OrganizationRole discriminator renamed from '__type' to 'kind'. Existing role definitions with '__type' will fail.","severity":"breaking","affected_versions":">=0.38.0"},{"fix":"Use Pulumi config: pulumi config set pulumi-pulumiservice:access_token <token>","message":"The access_token must be provided via a resource option or config; hardcoding in source is insecure.","severity":"gotcha","affected_versions":"all"},{"fix":"Ensure each environment name used in TeamEnvironmentPermission is globally unique.","message":"Environment names in TeamEnvironmentPermission must be unique across the org, not just the team. Duplicates cause refresh failures.","severity":"gotcha","affected_versions":">=0.36.0"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Use: import pulumi_pulumiservice as pulumiservice","cause":"Wrong import path; the provider is not a separate class.","error":"ImportError: cannot import name 'PulumiServiceProvider' from 'pulumi_pulumiservice'"},{"fix":"Set the access token via Pulumi config: pulumi config set pulumi-pulumiservice:access_token <token>","cause":"Missing or invalid access token for Pulumi Cloud.","error":"pulumi.errors.ResourceError: 'pulumiservice:index:Stack' resource has a problem: Invalid access token"},{"fix":"Update your role permissions to use 'kind' instead of '__type'.","cause":"Outdated schema; OrganizationRole discriminator changed from '__type' to 'kind'.","error":"pulumi.errors.ResourceError: 'pulumiservice:index:OrganizationRole' resource has a problem: expected 'kind' but got '__type'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}