# Monitoruloficial — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Access the Romanian Official Gazette to retrieve published issues by date, browse legislative modifications, search professional announcements, and find products in the online bookstore. Check the eMonitor calendar and search across the entire portal to stay updated on official Romanian government publications and legal changes.

**Category:** Government & Public Data | **Website:** [monitoruloficial.ro/](https://monitoruloficial.ro/) | **Docs:** [parse.bot/marketplace/2ce0590c-f0f6-461e-a2b7-46810674abae/monitoruloficial-ro-api](https://parse.bot/marketplace/2ce0590c-f0f6-461e-a2b7-46810674abae/monitoruloficial-ro-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get act full text

Fetch and extract the complete body text of all acts from a gazette issue PDF. Parses page-by-page text using the SUMAR (table of contents) to identify act boundaries, then returns each act's full text content. Useful for keyword searching inside laws, decisions, and government orders. The URL is obtained from get_issues_by_date or get_legislative_modifications_range results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url` | string | Yes | Issue page URL from get_issues_by_date or get_legislative_modifications_range (e.g. https://monitoruloficial.ro/Monitorul-Oficial--PI--583--2026.html) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/get-act-full-text \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url":"<string>"}'
```

### Get announcements

Search for professional announcements (Partea a IV-a) by Company ID (CUI) or registration number (Nr Înregistrare MO). Automatically obtains a session cookie and nonce from the search page before querying. Returns the 10 most recent matching announcements. At least one of cui or nr must be provided.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `cui` | string | No | Company ID (CUI). Either cui or nr must be provided. |
| `nr` | string | No | Registration number in Monitorul Oficial. Either cui or nr must be provided. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/get-announcements \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"cui":"<string>","nr":"<string>"}'
```

### Get emonitor calendar

Scan a month to identify dates with gazette publications. Iterates each day up to today and returns dates that have at least one published part. Only part names are returned, not individual issues. Response time scales linearly with days in the month (one upstream call per day).

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `month` | integer | Yes | Month (1-12) |
| `year` | integer | Yes | Year (e.g., 2026) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/get-emonitor-calendar \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"month":"<integer>","year":"<integer>"}'
```

### Get issue content

Fetch and parse the table of contents (SUMAR) from a gazette issue PDF. Extracts metadata (part name, issue number, year) from the URL and parses the first page of the PDF to identify published acts/documents with their categories and page numbers. The URL is obtained from get_issues_by_date or get_legislative_modifications_range results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url` | string | Yes | Issue page URL from get_issues_by_date or get_legislative_modifications_range (e.g. https://monitoruloficial.ro/Monitorul-Oficial--PI--321--2026.html) |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/get-issue-content \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url":"<string>"}'
```

### Get issues by date

Retrieve gazette issues for a specific date. Returns parts (Partea I, II, III, IV, VI, VII, Maghiară) and their issue numbers with URLs. Each part contains zero or more individually-numbered issues. Dates without publications return an empty parts array. The date defaults to today (UTC) when omitted.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `date` | string | No | Publication date in YYYY-MM-DD format. Defaults to today's date (UTC) if omitted. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/get-issues-by-date \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"date":"<string>"}'
```

### Get legislative modifications range

Retrieve all gazette issues published within a date range. Capped at 31 days maximum; if end_date exceeds start_date + 31 days it is silently truncated. Returns publications grouped by date, each containing full part and issue details. Response time scales with the number of days in the range.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `end_date` | string | Yes | End of date range in YYYY-MM-DD format. If more than 31 days after start_date, capped at start_date + 31 days. |
| `start_date` | string | Yes | Start of date range in YYYY-MM-DD format |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/get-legislative-modifications-range \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"end_date":"<string>","start_date":"<string>"}'
```

### Get products

Browse the online bookstore via the WooCommerce Store API. Returns up to 24 products per page with title, price in RON, permalink, and cover image URL. Supports filtering by category slug. Omitting category returns all products across all categories.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Product category slug for filtering (e.g. 'juridice', 'colectii-de-arta', 'constitutii'). Omitting returns all products. |
| `page` | integer | No | Page number for pagination |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/get-products \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","page":"<integer>"}'
```

### Search site

Site-wide search across products (books) and articles. Returns paginated results mixing both types. Products include a price; articles may include a text snippet. Results are ordered by WordPress relevance.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination |
| `query` | string | Yes | Search keywords |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/monitoruloficial/search-site \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.