Skip to main content

nadag-innmelding-python-client

A client library for accessing Nadag innmelding API

Usage

First, create a client:

from nadag_innmelding_python_client import AuthenticatedClient

secret_token = nadag_authenticate()  # This you need to implement this yourself

client = AuthenticatedClient(
    base_url="https://test.ngu.no/api/",
    token=secret_token,
)

Now call your endpoint and use your models:

from nadag_innmelding_python_client.api.default import get_nadag_innmelding_v_1_geoteknisk_unders as get_geoteknisk_unders
from nadag_innmelding_python_client.models import GeotekniskUnders
from nadag_innmelding_python_client.types import Response

with client as client:
    response: Response[GeotekniskUnders] = get_geoteknisk_unders.sync_detailed(
        client=client,
        ekstern_id=str(project_id),
        ekstern_navnerom="Your Namespace",
    )

    match response.status_code:
        case HTTPStatus.OK:
            geoteknisk_unders: GeotekniskUnders = response.parsed
        case HTTPStatus.NOT_FOUND:
            # Create a new project in NADAG
        case _:
            # Handle other status codes
            raise Exception(f"Got unexpected status code {response.status_code} for project ")

Things to know:

  1. Every path/method combo becomes a Python module with four functions:

    1. sync: Blocking request that returns parsed data (if successful) or None
    2. sync_detailed: Blocking request that always returns a Request, optionally with parsed set if the request was successful.
    3. asyncio: Like sync but async instead of blocking
    4. asyncio_detailed: Like sync_detailed but async instead of blocking
  2. All path/query params, and bodies become method arguments.

  3. If your endpoint had any tags on it, the first tag will be used as a module name for the function (my_tag above)

  4. Any endpoint which did not have a tag will be in nadag_innmelding_python_client.api.default

Advanced customizations

There are more settings on the generated Client class which let you control more runtime behavior, check out the docstring on that class for more info. You can also customize the underlying httpx.Client or httpx.AsyncClient (depending on your use-case):

from nadag_innmelding_python_client import Client


def log_request(request):
    print(f"Request event hook: {request.method} {request.url} - Waiting for response")


def log_response(response):
    request = response.request
    print(f"Response event hook: {request.method} {request.url} - Status {response.status_code}")


client = Client(
    base_url="https://api.example.com",
    httpx_args={"event_hooks": {"request": [log_request], "response": [log_response]}},
)

# Or get the underlying httpx client to modify directly with client.get_httpx_client() or client.get_async_httpx_client()

You can even set the httpx client directly, but beware that this will override any existing settings (e.g., base_url):

import httpx
from nadag_innmelding_python_client import Client

client = Client(
    base_url="https://api.example.com",
)
# Note that base_url needs to be re-set, as would any shared cookies, headers, etc.
client.set_httpx_client(httpx.Client(base_url="https://api.example.com", proxies="http://localhost:8030"))

Building / publishing this package

This project uses uv to manage dependencies and packaging. Here are the basics:

  1. Update the metadata in pyproject.toml (e.g. authors, version).
  2. Run uv sync to create the environment and install dependencies.
  3. Build the source and wheel distributions with uv build.
  4. Publish them with uv publish.

If you want to install this client into another project without publishing it (e.g. for development) then:

  1. In a uv project, run uv add <path-to-this-client>.
  2. Otherwise, run uv build --wheel and install the resulting wheel with pip.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nadag_innmelding_python_client-2026.9.7.tar.gz (111.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file nadag_innmelding_python_client-2026.9.7.tar.gz.

File metadata

  • Download URL: nadag_innmelding_python_client-2026.9.7.tar.gz
  • Upload date:
  • Size: 111.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for nadag_innmelding_python_client-2026.9.7.tar.gz
Algorithm Hash digest
SHA256 f2215017714fa205c27578eb1937dd56c4cdd291ea231c296c4cb368c46ff79d
MD5 5b519aad84bf9018df041476726cc0f5
BLAKE2b-256 168603e16c9e681386917e56a314a13da1cfe20f0971389e4155e20adb83f273

See more details on using hashes here.

File details

Details for the file nadag_innmelding_python_client-2026.9.7-py3-none-any.whl.

File metadata

  • Download URL: nadag_innmelding_python_client-2026.9.7-py3-none-any.whl
  • Upload date:
  • Size: 227.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for nadag_innmelding_python_client-2026.9.7-py3-none-any.whl
Algorithm Hash digest
SHA256 7d6ab3262cc13e5e70f965347d837f81bddd8088d75ded45777e73765e6ca082
MD5 8b7e5bb88b219ede5702a08e586bfc92
BLAKE2b-256 5163cf2d6fe25e9f315db121fa13a8fa03754b94ce07d33d2c9137ca146b532d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2026.9.7 This release

2 files

2026.4.24

2 files

2026.3.19

2 files

2026.3.13

2 files

2026.2.10

2 files

2025.12.19

2 files

2025.12.3

2 files

2025.11.20

2 files

2025.11.3

2 files

2025.10.23

2 files

2025.10.14

2 files

2025.10.10

2 files

2025.10.2.2

2 files

2025.10.2

2 files

2025.10.1

2 files

2025.9.26

2 files

2025.9.25

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page