Class: OpenAI::Resources::Admin::Organization::Projects::Roles
- Inherits:
-
Object
- Object
- OpenAI::Resources::Admin::Organization::Projects::Roles
- Defined in:
- lib/openai/resources/admin/organization/projects/roles.rb
Instance Method Summary collapse
-
#create(project_id, permissions:, role_name:, description: nil, request_options: {}) ⇒ OpenAI::Models::Admin::Organization::Role
Creates a custom role for a project.
-
#delete(role_id, project_id:, request_options: {}) ⇒ OpenAI::Models::Admin::Organization::Projects::RoleDeleteResponse
Deletes a custom role from a project.
-
#initialize(client:) ⇒ Roles
constructor
private
A new instance of Roles.
-
#list(project_id, after: nil, limit: nil, order: nil, request_options: {}) ⇒ OpenAI::Internal::NextCursorPage<OpenAI::Models::Admin::Organization::Role>
Some parameter documentations has been truncated, see Models::Admin::Organization::Projects::RoleListParams for more details.
-
#update(role_id, project_id:, description: nil, permissions: nil, role_name: nil, request_options: {}) ⇒ OpenAI::Models::Admin::Organization::Role
Updates an existing project role.
Constructor Details
#initialize(client:) ⇒ Roles
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Roles.
139 140 141 |
# File 'lib/openai/resources/admin/organization/projects/roles.rb', line 139 def initialize(client:) @client = client end |
Instance Method Details
#create(project_id, permissions:, role_name:, description: nil, request_options: {}) ⇒ OpenAI::Models::Admin::Organization::Role
Creates a custom role for a project.
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/openai/resources/admin/organization/projects/roles.rb', line 26 def create(project_id, params) parsed, = OpenAI::Admin::Organization::Projects::RoleCreateParams.dump_request(params) @client.request( method: :post, path: ["projects/%1$s/roles", project_id], body: parsed, model: OpenAI::Admin::Organization::Role, security: {admin_api_key_auth: true}, options: ) end |
#delete(role_id, project_id:, request_options: {}) ⇒ OpenAI::Models::Admin::Organization::Projects::RoleDeleteResponse
Deletes a custom role from a project.
121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
# File 'lib/openai/resources/admin/organization/projects/roles.rb', line 121 def delete(role_id, params) parsed, = OpenAI::Admin::Organization::Projects::RoleDeleteParams.dump_request(params) project_id = parsed.delete(:project_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :delete, path: ["projects/%1$s/roles/%2$s", project_id, role_id], model: OpenAI::Models::Admin::Organization::Projects::RoleDeleteResponse, security: {admin_api_key_auth: true}, options: ) end |
#list(project_id, after: nil, limit: nil, order: nil, request_options: {}) ⇒ OpenAI::Internal::NextCursorPage<OpenAI::Models::Admin::Organization::Role>
Some parameter documentations has been truncated, see Models::Admin::Organization::Projects::RoleListParams for more details.
Lists the roles configured for a project.
94 95 96 97 98 99 100 101 102 103 104 105 106 |
# File 'lib/openai/resources/admin/organization/projects/roles.rb', line 94 def list(project_id, params = {}) parsed, = OpenAI::Admin::Organization::Projects::RoleListParams.dump_request(params) query = OpenAI::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: ["projects/%1$s/roles", project_id], query: query, page: OpenAI::Internal::NextCursorPage, model: OpenAI::Admin::Organization::Role, security: {admin_api_key_auth: true}, options: ) end |
#update(role_id, project_id:, description: nil, permissions: nil, role_name: nil, request_options: {}) ⇒ OpenAI::Models::Admin::Organization::Role
Updates an existing project role.
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/openai/resources/admin/organization/projects/roles.rb', line 57 def update(role_id, params) parsed, = OpenAI::Admin::Organization::Projects::RoleUpdateParams.dump_request(params) project_id = parsed.delete(:project_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :post, path: ["projects/%1$s/roles/%2$s", project_id, role_id], body: parsed, model: OpenAI::Admin::Organization::Role, security: {admin_api_key_auth: true}, options: ) end |