ExDoppler.Projects (ExDoppler v1.0.1)

View Source

Module for interacting with ExDoppler.Project

๐Ÿ“– Resources

Summary

Functions

Same as create_project/1 but won't wrap a successful response in {:ok, response}

Same as delete_project/1 but won't wrap a successful response in {:ok, response}

Retrieves a ExDoppler.Project, given an identifier

Same as get_project/1 but won't wrap a successful response in {:ok, response}

Lists project permissions across all roles

Same as list_project_permissions/0 but won't wrap a successful response in {:ok, response}

Same as list_projects/1 but won't wrap a successful response in {:ok, response}

Same as update_project/1 but won't wrap a successful response in {:ok, response}

Functions

create_project(project_name, description \\ "")

Creates a new ExDoppler.Project

๐Ÿท๏ธ Params

  • project_name: New Project Name (e.g "example-project")
  • description: Optional description (e.g "my awesome project")

โคต๏ธ Returns

โœ… On Success

  {:ok, %ExDoppler.Project{...}}

โŒ On Failure

  {:error, err}

๐Ÿ’ป Examples

iex> alias ExDoppler.Projects
iex> alias ExDoppler.Project
iex> _ = Projects.delete_project!(%Project{name: "example-doc-project"})
iex> {:ok, project} = Projects.create_project("example-doc-project")
iex> :ok = Projects.delete_project!(project)

๐Ÿ“– Resources

create_project!(project_name, description \\ "")

Same as create_project/1 but won't wrap a successful response in {:ok, response}

delete_project(project)

Deletes a ExDoppler.Project

๐Ÿท๏ธ Params

  • project: The relevant project (e.g %Project{name: "example-project" ...})

โคต๏ธ Returns

โœ… On Success

  {:ok, {:success, true}

โŒ On Failure

  {:error, err}

๐Ÿ’ป Examples

iex> alias ExDoppler.Projects
iex> alias ExDoppler.Project
iex> _ = Projects.delete_project!(%Project{name: "example-doc-project"})
iex> project = Projects.create_project!("example-doc-project")
iex> {:ok, {:success, true}} = Projects.delete_project(project)

๐Ÿ“– Resources

delete_project!(project)

Same as delete_project/1 but won't wrap a successful response in {:ok, response}

get_project(identifier)

Retrieves a ExDoppler.Project, given an identifier

๐Ÿท๏ธ Params

  • identifier - identifier for project (e.g "example-project")

โคต๏ธ Returns

โœ… On Success

  {:ok, %ExDoppler.Project{...}}

โŒ On Failure

  {:error, err}

๐Ÿ’ป Examples

iex> alias ExDoppler.Projects
iex> {:ok, _project} = Projects.get_project("example-project")

๐Ÿ“– Resources

get_project!(identifier)

Same as get_project/1 but won't wrap a successful response in {:ok, response}

list_project_permissions()

Lists project permissions across all roles

โคต๏ธ Returns

โœ… On Success

  {:ok, ["perm1" ...]}

โŒ On Failure

  {:error, err}

๐Ÿ“– Resources

list_project_permissions!()

Same as list_project_permissions/0 but won't wrap a successful response in {:ok, response}

list_projects(opts \\ [])

Lists ExDoppler.Project using pagination

๐Ÿท๏ธ Params

  • opts: Optional modifications to the list call
    • page - which page to list (starts at 1) (e.g page: 2). Default: 1
    • per_page - the number of ExDoppler.Project to return for this page (e.g per_page: 50). Default: 20

โคต๏ธ Returns

โœ… On Success

  {:ok, [%ExDoppler.Project{...} ...]}

โŒ On Failure

  {:error, err}

๐Ÿ’ป Examples

iex> alias ExDoppler.Projects
iex> {:ok, _projects} = Projects.list_projects(page: 1, per_page: 20)

๐Ÿ“– Resources

list_projects!(opts \\ [])

Same as list_projects/1 but won't wrap a successful response in {:ok, response}

update_project(project, opts \\ [])

Updates an ExDoppler.Project

๐Ÿท๏ธ Params

  • project: The relevant project (e.g %Project{name: "example-project" ...})
  • opts: Optional modifications
    • name - New name for this project
    • description - New description for this project

โคต๏ธ Returns

โœ… On Success

  {:ok, %ExDoppler.Project{...}}

โŒ On Failure

  {:error, err}

๐Ÿ’ป Examples

iex> alias ExDoppler.Projects
iex> alias ExDoppler.Project
iex> _ = Projects.delete_project!(%Project{name: "example-doc-project"})
iex> project = Projects.create_project!("example-doc-project")
iex> {:ok, project} = Projects.update_project(project, description: "new description")
iex> :ok = Projects.delete_project!(project)

๐Ÿ“– Resources

update_project!(project, opts \\ [])

Same as update_project/1 but won't wrap a successful response in {:ok, response}