Metadata-Version: 2.4
Name: redatlas
Version: 0.1.3
Summary: RED Atlas External API
Home-page: https://github.com/red-atlas/red-atlas-sdks
Author: RED Atlas
Author-email: RED Atlas <engineering@atlas.red>
License-Expression: ISC
Project-URL: Repository, https://github.com/red-atlas/red-atlas-sdks
Keywords: OpenAPI,OpenAPI-Generator,RED Atlas External API
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: urllib3<3.0.0,>=2.1.0
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: pydantic>=2
Requires-Dist: typing-extensions>=4.7.1
Dynamic: author
Dynamic: home-page

# redatlas

Official Python SDK for the RED Atlas External API.

Use it to authenticate with your RED Atlas API key and call public data, plans, health, and reports endpoints.

## API Docs

For endpoint behavior, supported parameters, and response details, see the official API documentation:

- `https://api.atlas.red/es/docs`

## SDKs

- Python: `pip install redatlas`

## Install

```bash
pip install redatlas
```

## Quickstart

```python
from redatlas import RedAtlasClient

client = RedAtlasClient(
    api_key="ra_live_...",
)

health = client.health.health_get()
print(health.status)
```

## Authentication

The SDK is intended to be used with your RED Atlas API key.

```python
from redatlas import RedAtlasClient

client = RedAtlasClient(api_key="ra_live_...")
plans = client.plans.plans_list()

print(plans)
```

## Examples

```python
from redatlas import RedAtlasClient

client = RedAtlasClient(api_key="ra_live_...")

plans = client.plans.plans_list()
market = client.data.data_market(market="col")
records = client.data.data_list(market="col", entity_type="listings", limit=3)

print(len(plans.data))
print(market.data.available_entities)
print(len(records.data))
```

## Notes

- The public entrypoint is `RedAtlasClient`
- Standard usage is `RedAtlasClient(api_key="ra_live_...")`
- API parameters and endpoint semantics are documented at `https://api.atlas.red/es/docs`
- The default API host is the production RED Atlas API
- Integration tests in this repo verify that `RedAtlasClient` forwards generated API calls to the expected endpoints with the expected params

## Endpoints

For full details on parameters, request bodies, and responses, see the [API documentation](https://api.atlas.red/es/docs).

| Resource | Method | Endpoint |
| --- | --- | --- |
| Health | `client.health.health_get()` | `GET /v1/health` |
| Plans | `client.plans.plans_list()` | `GET /v1/plans` |
| Auth | `client.auth.auth_register()` | `POST /v1/auth/register` |
| Auth | `client.auth.auth_login()` | `POST /v1/auth/login` |
| Auth | `client.auth.auth_refresh()` | `POST /v1/auth/refresh` |
| Auth | `client.auth.auth_logout()` | `POST /v1/auth/logout` |
| Auth | `client.auth.auth_me()` | `GET /v1/auth/me` |
| Auth | `client.auth.auth_update_me()` | `PATCH /v1/auth/me` |
| Auth | `client.auth.auth_delete_me()` | `DELETE /v1/auth/me` |
| Auth | `client.auth.auth_change_password()` | `POST /v1/auth/change-password` |
| Auth | `client.auth.auth_forgot_password()` | `POST /v1/auth/forgot-password` |
| Auth | `client.auth.auth_reset_password()` | `POST /v1/auth/reset-password` |
| Auth | `client.auth.auth_invite_info()` | `GET /v1/auth/invite/{token}` |
| Auth | `client.auth.auth_accept_invite()` | `POST /v1/auth/invite/accept` |
| Data | `client.data.data_market()` | `GET /v1/data/{market}` |
| Data | `client.data.data_list()` | `GET /v1/data/{market}/{entityType}` |
| Data | `client.data.data_get()` | `GET /v1/data/{market}/{entityType}/{id}` |
| Reports | `client.reports.reports_list()` | `GET /v1/reports` |
| Reports | `client.reports.reports_create()` | `POST /v1/reports` |
| Reports | `client.reports.reports_create_avm()` | `POST /v1/reports/avm` |
| Reports | `client.reports.reports_create_comparables()` | `POST /v1/reports/comparables` |
| Reports | `client.reports.reports_get()` | `GET /v1/reports/{id}` |
| Reports | `client.reports.reports_get_public()` | `GET /v1/reports/public/{reportId}` |
| Reports | `client.reports.reports_get_white_label()` | `GET /v1/reports/white-label` |
| Reports | `client.reports.reports_update_white_label()` | `PUT /v1/reports/white-label` |
| Usage | `client.usage.usage_summary()` | `GET /v1/account/usage` |
| Usage | `client.usage.usage_daily()` | `GET /v1/account/usage/daily` |
| Usage | `client.usage.usage_by_endpoint()` | `GET /v1/account/usage/by-endpoint` |
| Usage | `client.usage.usage_by_market()` | `GET /v1/account/usage/by-market` |
| API Keys | `client.keys.keys_list()` | `GET /v1/account/keys` |
| API Keys | `client.keys.keys_create()` | `POST /v1/account/keys` |
| API Keys | `client.keys.keys_revoke()` | `DELETE /v1/account/keys/{id}` |
| API Keys | `client.keys.keys_rotate()` | `POST /v1/account/keys/{id}/rotate` |
| Team | `client.team.team_list()` | `GET /v1/team` |
| Team | `client.team.team_invite()` | `POST /v1/team/invite` |
| Team | `client.team.team_update()` | `PATCH /v1/team/{memberId}` |
| Team | `client.team.team_remove()` | `DELETE /v1/team/{memberId}` |
| Notifications | `client.notifications.notifications_get_preferences()` | `GET /v1/account/notifications/preferences` |
| Notifications | `client.notifications.notifications_update_preferences()` | `PUT /v1/account/notifications/preferences` |
| Notifications | `client.notifications.notifications_list()` | `GET /v1/account/notifications` |
| Notifications | `client.notifications.notifications_unread_count()` | `GET /v1/account/notifications/unread-count` |
| Notifications | `client.notifications.notifications_mark_all_read()` | `PUT /v1/account/notifications/read-all` |
| Notifications | `client.notifications.notifications_mark_read()` | `PUT /v1/account/notifications/{id}/read` |
| Billing | `client.billing.billing_handle_webhook()` | `POST /v1/billing/webhook` |
| Billing | `client.billing.billing_status()` | `GET /v1/billing` |
| Billing | `client.billing.billing_subscribe()` | `POST /v1/billing/subscribe` |
| Billing | `client.billing.billing_change_plan()` | `PUT /v1/billing/plan` |
| Billing | `client.billing.billing_cancel_subscription()` | `DELETE /v1/billing/subscription` |
| Billing | `client.billing.billing_list_invoices()` | `GET /v1/billing/invoices` |
| Billing | `client.billing.billing_get_payment_method()` | `GET /v1/billing/payment-method` |
| Billing | `client.billing.billing_update_payment_method()` | `PUT /v1/billing/payment-method` |
| Billing | `client.billing.billing_purchase_topup()` | `POST /v1/billing/topup` |
| Changelog | `client.changelog.changelog_list()` | `GET /v1/changelog` |
| Changelog | `client.changelog.changelog_create()` | `POST /v1/changelog` |
| Changelog | `client.changelog.changelog_update()` | `PUT /v1/changelog/{id}` |
| Changelog | `client.changelog.changelog_delete()` | `DELETE /v1/changelog/{id}` |
