# Generated by `mix github.gen` from docs/github-api/api.github.com.json.
# Do not edit by hand; re-run the task instead.
defmodule Noizu.Github.Api.EnterpriseTeams do
@moduledoc """
GitHub `enterprise-teams` API.
"""
import Noizu.Github
@doc """
Create an enterprise team
@see https://docs.github.com/rest/enterprise-teams/enterprise-teams#create-an-enterprise-team
"""
def create(enterprise, body, options \\ nil) do
url = github_base() <> "/enterprises/#{enterprise}/teams"
body = body
api_call(:post, url, body, Noizu.Github.EnterpriseTeam, options)
end
@doc """
Delete an enterprise team
@see https://docs.github.com/rest/enterprise-teams/enterprise-teams#delete-an-enterprise-team
"""
def delete(enterprise, team_slug, options \\ nil) do
url = github_base() <> "/enterprises/#{enterprise}/teams/#{team_slug}"
body = %{}
api_call(:delete, url, body, Noizu.Github.Raw, options)
end
@doc """
Get an enterprise team
@see https://docs.github.com/rest/enterprise-teams/enterprise-teams#get-an-enterprise-team
"""
def get(enterprise, team_slug, options \\ nil) do
url = github_base() <> "/enterprises/#{enterprise}/teams/#{team_slug}"
body = %{}
api_call(:get, url, body, Noizu.Github.EnterpriseTeam, options)
end
@doc """
List enterprise teams
@see https://docs.github.com/rest/enterprise-teams/enterprise-teams#list-enterprise-teams
"""
def list(enterprise, options \\ nil) do
url =
(
query =
[
get_field(:per_page, options, nil),
get_field(:page, options, nil)
]
|> Enum.filter(& &1)
qs = if query == [], do: "", else: "?" <> Enum.join(query, "&")
github_base() <> "/enterprises/#{enterprise}/teams" <> qs
)
body = %{}
api_call(:get, url, body, Noizu.Github.Collection.EnterpriseTeam, options)
end
@doc """
Update an enterprise team
@see https://docs.github.com/rest/enterprise-teams/enterprise-teams#update-an-enterprise-team
"""
def update(enterprise, team_slug, body, options \\ nil) do
url = github_base() <> "/enterprises/#{enterprise}/teams/#{team_slug}"
body = body
api_call(:patch, url, body, Noizu.Github.EnterpriseTeam, options)
end
end