View Source Link (openapi_compiler v1.0.0-beta.18)

Link Example - 1.0.0

Link to this section Summary

Types

Options that may be passed to a request function. See request/2 for detailed descriptions.

Functions

Perform a DELETE request.

Perform a DELETE request.

Perform a GET request.

Perform a GET request.

GET /2.0/repositories/{username}/{slug}/pullrequests

GET /2.0/repositories/{username}/{slug}/pullrequests/{pid}

Perform a HEAD request.

Perform a HEAD request.

Perform a OPTIONS request.

Perform a OPTIONS request.

Perform a PATCH request.

Perform a PATCH request.

Perform a POST request.

Perform a POST request.

POST /2.0/repositories/{username}/{slug}/pullrequests/{pid}/merge

Perform a PUT request.

Perform a PUT request.

Perform request and raise in case of error.

Perform a TRACE request.

Perform a TRACE request.

Link to this section Types

Link to this type

get_2_0_repositories_username_config()

View Source
@type get_2_0_repositories_username_config() :: %{
  optional(:body) => any(),
  :path => get_2_0_repositories_username_config_path(),
  optional(:query) => get_2_0_repositories_username_config_query(),
  optional(:headers) => get_2_0_repositories_username_config_header(),
  optional(:opts) => Tesla.Env.opts()
}
Link to this type

get_2_0_repositories_username_config_header()

View Source
@type get_2_0_repositories_username_config_header() :: %{
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_config_path()

View Source
@type get_2_0_repositories_username_config_path() :: %{
  :username => String.t(),
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_config_query()

View Source
@type get_2_0_repositories_username_config_query() :: %{optional(String.t()) => any()}
Link to this type

get_2_0_repositories_username_response()

View Source
@type get_2_0_repositories_username_response() ::
  response(get_2_0_repositories_username_response_options())
Link to this type

get_2_0_repositories_username_response_options()

View Source
@type get_2_0_repositories_username_response_options() ::
  {200, [Link.Schema.Read.repository()], Tesla.Env.t()}
Link to this type

get_2_0_repositories_username_slug_config()

View Source
@type get_2_0_repositories_username_slug_config() :: %{
  optional(:body) => any(),
  :path => get_2_0_repositories_username_slug_config_path(),
  optional(:query) => get_2_0_repositories_username_slug_config_query(),
  optional(:headers) => get_2_0_repositories_username_slug_config_header(),
  optional(:opts) => Tesla.Env.opts()
}
Link to this type

get_2_0_repositories_username_slug_config_header()

View Source
@type get_2_0_repositories_username_slug_config_header() :: %{
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_config_path()

View Source
@type get_2_0_repositories_username_slug_config_path() :: %{
  :username => String.t(),
  :slug => String.t(),
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_config_query()

View Source
@type get_2_0_repositories_username_slug_config_query() :: %{
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_config()

View Source
@type get_2_0_repositories_username_slug_pullrequests_config() :: %{
  optional(:body) => any(),
  :path => get_2_0_repositories_username_slug_pullrequests_config_path(),
  optional(:query) =>
    get_2_0_repositories_username_slug_pullrequests_config_query(),
  optional(:headers) =>
    get_2_0_repositories_username_slug_pullrequests_config_header(),
  optional(:opts) => Tesla.Env.opts()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_config_header()

View Source
@type get_2_0_repositories_username_slug_pullrequests_config_header() :: %{
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_config_path()

View Source
@type get_2_0_repositories_username_slug_pullrequests_config_path() :: %{
  :username => String.t(),
  :slug => String.t(),
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_config_query()

View Source
@type get_2_0_repositories_username_slug_pullrequests_config_query() :: %{
  optional(:state) => :declined | :merged | :open,
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_pid_config()

View Source
@type get_2_0_repositories_username_slug_pullrequests_pid_config() :: %{
  optional(:body) => any(),
  :path => get_2_0_repositories_username_slug_pullrequests_pid_config_path(),
  optional(:query) =>
    get_2_0_repositories_username_slug_pullrequests_pid_config_query(),
  optional(:headers) =>
    get_2_0_repositories_username_slug_pullrequests_pid_config_header(),
  optional(:opts) => Tesla.Env.opts()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_pid_config_header()

View Source
@type get_2_0_repositories_username_slug_pullrequests_pid_config_header() :: %{
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_pid_config_path()

View Source
@type get_2_0_repositories_username_slug_pullrequests_pid_config_path() :: %{
  :username => String.t(),
  :slug => String.t(),
  :pid => String.t(),
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_pid_config_query()

View Source
@type get_2_0_repositories_username_slug_pullrequests_pid_config_query() :: %{
  optional(String.t()) => any()
}
Link to this type

get_2_0_repositories_username_slug_pullrequests_pid_response()

View Source
@type get_2_0_repositories_username_slug_pullrequests_pid_response() ::
  response(
    get_2_0_repositories_username_slug_pullrequests_pid_response_options()
  )
Link to this type

get_2_0_repositories_username_slug_pullrequests_pid_response_options()

View Source
@type get_2_0_repositories_username_slug_pullrequests_pid_response_options() ::
  {200, Link.Schema.Read.pullrequest(), Tesla.Env.t()}
Link to this type

get_2_0_repositories_username_slug_pullrequests_response()

View Source
@type get_2_0_repositories_username_slug_pullrequests_response() ::
  response(get_2_0_repositories_username_slug_pullrequests_response_options())
Link to this type

get_2_0_repositories_username_slug_pullrequests_response_options()

View Source
@type get_2_0_repositories_username_slug_pullrequests_response_options() ::
  {200, [Link.Schema.Read.pullrequest()], Tesla.Env.t()}
Link to this type

get_2_0_repositories_username_slug_response()

View Source
@type get_2_0_repositories_username_slug_response() ::
  response(get_2_0_repositories_username_slug_response_options())
Link to this type

get_2_0_repositories_username_slug_response_options()

View Source
@type get_2_0_repositories_username_slug_response_options() ::
  {200, Link.Schema.Read.repository(), Tesla.Env.t()}
Link to this type

get_2_0_users_username_config()

View Source
@type get_2_0_users_username_config() :: %{
  optional(:body) => any(),
  :path => get_2_0_users_username_config_path(),
  optional(:query) => get_2_0_users_username_config_query(),
  optional(:headers) => get_2_0_users_username_config_header(),
  optional(:opts) => Tesla.Env.opts()
}
Link to this type

get_2_0_users_username_config_header()

View Source
@type get_2_0_users_username_config_header() :: %{optional(String.t()) => any()}
Link to this type

get_2_0_users_username_config_path()

View Source
@type get_2_0_users_username_config_path() :: %{
  :username => String.t(),
  optional(String.t()) => any()
}
Link to this type

get_2_0_users_username_config_query()

View Source
@type get_2_0_users_username_config_query() :: %{optional(String.t()) => any()}
Link to this type

get_2_0_users_username_response()

View Source
@type get_2_0_users_username_response() ::
  response(get_2_0_users_username_response_options())
Link to this type

get_2_0_users_username_response_options()

View Source
@type get_2_0_users_username_response_options() ::
  {200, Link.Schema.Read.user(), Tesla.Env.t()}
@type option() ::
  {:method, Tesla.Env.method()}
  | {:url, Tesla.Env.url()}
  | {:query, Tesla.Env.query()}
  | {:headers, Tesla.Env.headers()}
  | {:body, Tesla.Env.body()}
  | {:opts, Tesla.Env.opts()}

Options that may be passed to a request function. See request/2 for detailed descriptions.

Link to this type

post_2_0_repositories_username_slug_pullrequests_pid_merge_config()

View Source
@type post_2_0_repositories_username_slug_pullrequests_pid_merge_config() :: %{
  optional(:body) => any(),
  :path =>
    post_2_0_repositories_username_slug_pullrequests_pid_merge_config_path(),
  optional(:query) =>
    post_2_0_repositories_username_slug_pullrequests_pid_merge_config_query(),
  optional(:headers) =>
    post_2_0_repositories_username_slug_pullrequests_pid_merge_config_header(),
  optional(:opts) => Tesla.Env.opts()
}
Link to this type

post_2_0_repositories_username_slug_pullrequests_pid_merge_config_header()

View Source
@type post_2_0_repositories_username_slug_pullrequests_pid_merge_config_header() :: %{
  optional(String.t()) => any()
}
Link to this type

post_2_0_repositories_username_slug_pullrequests_pid_merge_config_path()

View Source
@type post_2_0_repositories_username_slug_pullrequests_pid_merge_config_path() :: %{
  :username => String.t(),
  :slug => String.t(),
  :pid => String.t(),
  optional(String.t()) => any()
}
Link to this type

post_2_0_repositories_username_slug_pullrequests_pid_merge_config_query()

View Source
@type post_2_0_repositories_username_slug_pullrequests_pid_merge_config_query() :: %{
  optional(String.t()) => any()
}
Link to this type

post_2_0_repositories_username_slug_pullrequests_pid_merge_response()

View Source
@type post_2_0_repositories_username_slug_pullrequests_pid_merge_response() ::
  response(
    post_2_0_repositories_username_slug_pullrequests_pid_merge_response_options()
  )
Link to this type

post_2_0_repositories_username_slug_pullrequests_pid_merge_response_options()

View Source
@type post_2_0_repositories_username_slug_pullrequests_pid_merge_response_options() ::
  {204, any(), Tesla.Env.t()}
Link to this type

response(possible_responses)

View Source
@type response(possible_responses) ::
  {:ok, possible_responses}
  | {:error, {:unexpected_response, Tesla.Env.t()} | any()}
@type server_parameters() :: %{}

Link to this section Functions

Link to this function

delete!(client, url, opts)

View Source
@spec delete!(Tesla.Env.client(), Tesla.Env.url(), [option()]) ::
  Tesla.Env.t() | no_return()

Perform a DELETE request.

See request!/1 or request!/2 for options definition.

delete!("/users")
delete!("/users", query: [scope: "admin"])
delete!(client, "/users")
delete!(client, "/users", query: [scope: "admin"])
delete!(client, "/users", body: %{name: "Jon"})
Link to this function

delete(client, url, opts)

View Source
@spec delete(Tesla.Env.client(), Tesla.Env.url(), [option()]) :: Tesla.Env.result()

Perform a DELETE request.

See request/1 or request/2 for options definition.

delete("/users")
delete("/users", query: [scope: "admin"])
delete(client, "/users")
delete(client, "/users", query: [scope: "admin"])
delete(client, "/users", body: %{name: "Jon"})
@spec get!(Tesla.Env.client(), Tesla.Env.url(), [option()]) ::
  Tesla.Env.t() | no_return()

Perform a GET request.

See request!/1 or request!/2 for options definition.

get!("/users")
get!("/users", query: [scope: "admin"])
get!(client, "/users")
get!(client, "/users", query: [scope: "admin"])
get!(client, "/users", body: %{name: "Jon"})

Perform a GET request.

See request/1 or request/2 for options definition.

get("/users")
get("/users", query: [scope: "admin"])
get(client, "/users")
get(client, "/users", query: [scope: "admin"])
get(client, "/users", body: %{name: "Jon"})
Link to this function

get_2_0_repositories_username(client \\ %Tesla.Client{}, config)

View Source
@spec get_2_0_repositories_username(
  client :: Tesla.Client.t(),
  config :: get_2_0_repositories_username_config()
) :: get_2_0_repositories_username_response()

GET /2.0/repositories/{username}

Link to this function

get_2_0_repositories_username_slug(client \\ %Tesla.Client{}, config)

View Source
@spec get_2_0_repositories_username_slug(
  client :: Tesla.Client.t(),
  config :: get_2_0_repositories_username_slug_config()
) :: get_2_0_repositories_username_slug_response()

GET /2.0/repositories/{username}/{slug}

Link to this function

get_2_0_repositories_username_slug_pullrequests(client \\ %Tesla.Client{}, config)

View Source
@spec get_2_0_repositories_username_slug_pullrequests(
  client :: Tesla.Client.t(),
  config :: get_2_0_repositories_username_slug_pullrequests_config()
) :: get_2_0_repositories_username_slug_pullrequests_response()

GET /2.0/repositories/{username}/{slug}/pullrequests

Link to this function

get_2_0_repositories_username_slug_pullrequests_pid(client \\ %Tesla.Client{}, config)

View Source
@spec get_2_0_repositories_username_slug_pullrequests_pid(
  client :: Tesla.Client.t(),
  config :: get_2_0_repositories_username_slug_pullrequests_pid_config()
) :: get_2_0_repositories_username_slug_pullrequests_pid_response()

GET /2.0/repositories/{username}/{slug}/pullrequests/{pid}

Link to this function

get_2_0_users_username(client \\ %Tesla.Client{}, config)

View Source
@spec get_2_0_users_username(
  client :: Tesla.Client.t(),
  config :: get_2_0_users_username_config()
) ::
  get_2_0_users_username_response()

GET /2.0/users/{username}

Link to this function

get_pull_requests_by_id(client \\ %Tesla.Client{}, config)

View Source

See Link.get_2_0_repositories_username_slug_pullrequests_pid/2.

Link to this function

get_pull_requests_by_repository(client \\ %Tesla.Client{}, config)

View Source

See Link.get_2_0_repositories_username_slug_pullrequests/2.

Link to this function

get_repositories_by_owner(client \\ %Tesla.Client{}, config)

View Source

See Link.get_2_0_repositories_username/2.

Link to this function

get_repository(client \\ %Tesla.Client{}, config)

View Source

See Link.get_2_0_repositories_username_slug/2.

Link to this function

get_user_by_name(client \\ %Tesla.Client{}, config)

View Source

See Link.get_2_0_users_username/2.

Link to this function

head!(client, url, opts)

View Source
@spec head!(Tesla.Env.client(), Tesla.Env.url(), [option()]) ::
  Tesla.Env.t() | no_return()

Perform a HEAD request.

See request!/1 or request!/2 for options definition.

head!("/users")
head!("/users", query: [scope: "admin"])
head!(client, "/users")
head!(client, "/users", query: [scope: "admin"])
head!(client, "/users", body: %{name: "Jon"})

Perform a HEAD request.

See request/1 or request/2 for options definition.

head("/users")
head("/users", query: [scope: "admin"])
head(client, "/users")
head(client, "/users", query: [scope: "admin"])
head(client, "/users", body: %{name: "Jon"})
Link to this function

merge_pull_request(client \\ %Tesla.Client{}, config)

View Source

See Link.post_2_0_repositories_username_slug_pullrequests_pid_merge/2.

Link to this function

options!(client, url, opts)

View Source
@spec options!(Tesla.Env.client(), Tesla.Env.url(), [option()]) ::
  Tesla.Env.t() | no_return()

Perform a OPTIONS request.

See request!/1 or request!/2 for options definition.

options!("/users")
options!("/users", query: [scope: "admin"])
options!(client, "/users")
options!(client, "/users", query: [scope: "admin"])
options!(client, "/users", body: %{name: "Jon"})
Link to this function

options(client, url, opts)

View Source
@spec options(Tesla.Env.client(), Tesla.Env.url(), [option()]) :: Tesla.Env.result()

Perform a OPTIONS request.

See request/1 or request/2 for options definition.

options("/users")
options("/users", query: [scope: "admin"])
options(client, "/users")
options(client, "/users", query: [scope: "admin"])
options(client, "/users", body: %{name: "Jon"})
Link to this function

patch!(client, url, body, opts)

View Source

Perform a PATCH request.

See request!/1 or request!/2 for options definition.

patch!("/users", %{name: "Jon"})
patch!("/users", %{name: "Jon"}, query: [scope: "admin"])
patch!(client, "/users", %{name: "Jon"})
patch!(client, "/users", %{name: "Jon"}, query: [scope: "admin"])
Link to this function

patch(client, url, body, opts)

View Source

Perform a PATCH request.

See request/1 or request/2 for options definition.

patch("/users", %{name: "Jon"})
patch("/users", %{name: "Jon"}, query: [scope: "admin"])
patch(client, "/users", %{name: "Jon"})
patch(client, "/users", %{name: "Jon"}, query: [scope: "admin"])
Link to this function

post!(client, url, body, opts)

View Source

Perform a POST request.

See request!/1 or request!/2 for options definition.

post!("/users", %{name: "Jon"})
post!("/users", %{name: "Jon"}, query: [scope: "admin"])
post!(client, "/users", %{name: "Jon"})
post!(client, "/users", %{name: "Jon"}, query: [scope: "admin"])
Link to this function

post(client, url, body, opts)

View Source

Perform a POST request.

See request/1 or request/2 for options definition.

post("/users", %{name: "Jon"})
post("/users", %{name: "Jon"}, query: [scope: "admin"])
post(client, "/users", %{name: "Jon"})
post(client, "/users", %{name: "Jon"}, query: [scope: "admin"])
Link to this function

post_2_0_repositories_username_slug_pullrequests_pid_merge(client \\ %Tesla.Client{}, config)

View Source
@spec post_2_0_repositories_username_slug_pullrequests_pid_merge(
  client :: Tesla.Client.t(),
  config :: post_2_0_repositories_username_slug_pullrequests_pid_merge_config()
) :: post_2_0_repositories_username_slug_pullrequests_pid_merge_response()

POST /2.0/repositories/{username}/{slug}/pullrequests/{pid}/merge

Link to this function

put!(client, url, body, opts)

View Source

Perform a PUT request.

See request!/1 or request!/2 for options definition.

put!("/users", %{name: "Jon"})
put!("/users", %{name: "Jon"}, query: [scope: "admin"])
put!(client, "/users", %{name: "Jon"})
put!(client, "/users", %{name: "Jon"}, query: [scope: "admin"])
Link to this function

put(client, url, body, opts)

View Source

Perform a PUT request.

See request/1 or request/2 for options definition.

put("/users", %{name: "Jon"})
put("/users", %{name: "Jon"}, query: [scope: "admin"])
put(client, "/users", %{name: "Jon"})
put(client, "/users", %{name: "Jon"}, query: [scope: "admin"])
Link to this function

request!(client \\ %Tesla.Client{}, options)

View Source
@spec request!(Tesla.Env.client(), [option()]) :: Tesla.Env.t() | no_return()

Perform request and raise in case of error.

This is similar to request/2 behaviour from Tesla 0.x

See request/2 for list of available options.

Link to this function

request(client \\ %Tesla.Client{}, options)

View Source
@spec request(Tesla.Env.client(), [option()]) :: Tesla.Env.result()

Perform a request.

options

Options

  • :method - the request method, one of [:head, :get, :delete, :trace, :options, :post, :put, :patch]
  • :url - either full url e.g. "http://example.com/some/path" or just "/some/path" if using Tesla.Middleware.BaseUrl
  • :query - a keyword list of query params, e.g. [page: 1, per_page: 100]
  • :headers - a keyworld list of headers, e.g. [{"content-type", "text/plain"}]
  • :body - depends on used middleware:
    • by default it can be a binary
    • if using e.g. JSON encoding middleware it can be a nested map
    • if adapter supports it it can be a Stream with any of the above
  • :opts - custom, per-request middleware or adapter options

examples

Examples

ExampleApi.request(method: :get, url: "/users/path")

# use shortcut methods
ExampleApi.get("/users/1")
ExampleApi.post(client, "/users", %{name: "Jon"})
Link to this function

trace!(client, url, opts)

View Source
@spec trace!(Tesla.Env.client(), Tesla.Env.url(), [option()]) ::
  Tesla.Env.t() | no_return()

Perform a TRACE request.

See request!/1 or request!/2 for options definition.

trace!("/users")
trace!("/users", query: [scope: "admin"])
trace!(client, "/users")
trace!(client, "/users", query: [scope: "admin"])
trace!(client, "/users", body: %{name: "Jon"})
Link to this function

trace(client, url, opts)

View Source

Perform a TRACE request.

See request/1 or request/2 for options definition.

trace("/users")
trace("/users", query: [scope: "admin"])
trace(client, "/users")
trace(client, "/users", query: [scope: "admin"])
trace(client, "/users", body: %{name: "Jon"})