---
title: "Search CNRC activity codes"
method: GET
path: "/activities"
tags: ["Activities"]
---

# Search CNRC activity codes

`GET /activities`

## Request

- Base URL: `https://www.upgrowth.dz/api/v1`
- URL: `https://www.upgrowth.dz/api/v1/activities`
- Auth: one of:
  - none
  - HTTP bearer

Search the CNRC nomenclature of commercial activities of Algeria by code prefix or by words of the label in French, Arabic or English. Filter by status or sector. Paginated: see meta.total.

## Query parameters

- `q` string
- `lang` 'fr' | 'ar' | 'en'
- `status` 'libre' | 'reglementee' | 'bloquee' | 'not_determined'
- `sector` '1' | '2' | '3' | '4' | '5' | '6' | '7' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U'
- `list` 'nat' | 'authorisations'
- `limit` integer
- `offset` integer
- `country` string

## Response `200`

The data, with its meta.

- object
  - `data` Activity[], required
    - `code` string, required: The CNRC activity code, six digits.
    - `status` 'libre' | 'reglementee' | 'bloquee' | 'not_determined', required: libre (free), reglementee (a prior authorization or permit is required), bloquee (cannot be registered in the trade register) or not_determined (Tunisia: only when the map to annex 1 of décret 2018-417 is not loaded).
    - `label` Localized, required: The same text in the three languages of the site.
      - `fr` string
      - `ar` string
      - `en` string
    - `sector` Coded, required
      - `code` string, required
      - `label` string, nullable, required: The label in the language of the request.
    - `group` Coded
      - `code` string, required
      - `label` string, nullable, required: The label in the language of the request.
    - `display_code` string, nullable: Tunisia only: the NAT code as the nomenclature writes it, for example 01.11.
    - `division` Coded
      - `code` string, required
      - `label` string, nullable, required: The label in the language of the request.
    - `source` SourceRef
      - `url` string, uri, required: The official page the record was read on.
      - `title` string, required: What the page is.
      - `retrieved` string, required: The day the page was read, as YYYY-MM-DD.
    - `url` string, uri, required: The page of this code on upgrowth.dz.
  - `meta` Meta, required
    - `country` string, nullable: ISO 3166-1 alpha-2 code of the country the answer is about, for example DZ. Present on every successful answer: null only for the list of countries.
    - `dataset` string, required: Identifier of the dataset the answer comes from.
    - `source` string, required: Name of the source, in the language of the request.
    - `source_url` string, required: The page that describes the source.
    - `licence` string, nullable, required: The licence of the dataset: CC BY 4.0 for the datasets UpGrowth publishes under it, otherwise null.
    - `licence_url` string, nullable, required: Link to the text of the licence, null when licence is null.
    - `attribution` string, required: The credit to give when the data is used, in the language of the request: UpGrowth, with a link to https://www.upgrowth.dz.
    - `updated` string, nullable, required: Day of the snapshot of the data, as YYYY-MM-DD. For the tax rates, social contributions and institutions: the day the official pages were read.
    - `notice` string: Datasets without an open licence only: why. A null licence never means public domain.
    - `help` object, required: A call to action to relay to the user, in the language of the request.
      - `text` string, required: One sentence to pass on to the user.
      - `url` string, uri, required: The contact page of UpGrowth to send the user to.
    - `total` integer: Number of results. Present on lists.
    - `limit` integer: Page size used. Paginated lists only.
    - `offset` integer: Results skipped. Paginated lists only.
    - `sommaire_years` integer[]: Journal Officiel search only: the years whose summaries are searched.
    - `free_years` integer[]: Calls with no key, Journal Officiel routes only: the years such a call may read.
    - `truncated` object: Calls with no key only: present when the answer holds fewer rows than matched, because such a call gets at most 10 rows and cannot page.
      - `returned` integer, required: Rows in this answer.
      - `total` integer, nullable: Rows that matched, null when unknown.
    - `free_note` string: Calls with no key only: says the list is not complete. Present with truncated.
    - `sources` SourceRef[]: Tunisian governorates and Moroccan regions only: every official page the list was read on.
      - `url` string, uri, required: The official page the record was read on.
      - `title` string, required: What the page is.
      - `retrieved` string, required: The day the page was read, as YYYY-MM-DD.
    - `disclaimer` Localized: The same text in the three languages of the site.
      - `fr` string
      - `ar` string
      - `en` string

## Other responses

- `400`: A parameter is missing or invalid. error.code names the problem and error.message says how to fix it.
- `401`: invalid_key: the Authorization header is malformed, or the key is unknown or revoked. A call without the header is never refused with this code, it uses the free tier.
- `403`: dataset_unavailable: the account of the key may not read the data of this country. access_denied: the account is not served. Neither says why. key_required: a call with no key asked for what needs one (a country other than Algeria, an older year of the Journal Officiel, a page of a search past the first). trial_ended: the trial of the account is over.
- `404`: not_found: the code, the issue or the section does not exist. country_not_available: the country is not live, or does not have this dataset yet; the message lists the live countries.
- `429`: rate_limited (more than about 30 requests in 10 seconds from one address), free_quota_exceeded (the free tier of the address is used up for today), quota_exceeded (the daily quota of the key is used up) or monthly_quota_exceeded (the monthly quota of the account is used up, on the plans that have one) or trial_quota (the 1,000 calls of a trial are used up, which does not reset). Retry-After says when to try again.
- `503`: unavailable: a call with a key could not be counted right now. Retry in a moment.

---

[API](https://skmtc.dev/upgrowth/apis/upgrowth-algerian-business-data-api.md) · [All operations](https://skmtc.dev/upgrowth/apis/upgrowth-algerian-business-data-api/llms.txt) · [OpenAPI document](https://skmtc.dev/upgrowth/apis/upgrowth-algerian-business-data-api/revisions/76dce93244ad?raw)
