Aller au contenu
NessFlow
Menu
    Sommaire de la documentation

    Compte

    Le jeton, son équipe, son offre et sa consommation.

    Décrire le jeton courant

    GET /v1/me

    Rend le jeton, le membre qui le porte, l’équipe pour laquelle il agit, l’offre que le serveur résout à cet instant et les verbes de l’API qu’elle ouvre. C’est le premier appel de toute intégration.

    Scopes requis
    facultatif
    Coût en débit
    1 unité(s)

    Réponses

    • 200 The current token and its context.
    • 401 Missing, invalid or expired token, or a member who left the team.
    • 403 The plan does not include the API (`api.not_in_plan`) or this verb (`api.write_not_in_plan`), or the token lacks a scope (`token.missing_scope`).
    • 429 The plan rate limit is exhausted for one window.

    cURL

    curl "https://api.nessflow.com/v1/me" \
      -H "Authorization: Bearer $NESSFLOW_TOKEN"

    PHP

    $client = new GuzzleHttp\Client(['base_uri' => 'https://api.nessflow.com/v1/']);
    
    $response = $client->request('GET', 'me', [
        'headers' => [
            'Authorization' => 'Bearer '.getenv('NESSFLOW_TOKEN'),
        ],
    ]);
    
    $data = json_decode((string) $response->getBody(), true);

    JavaScript

    const response = await fetch('https://api.nessflow.com/v1/me', {
      headers: {
        Authorization: `Bearer ${process.env.NESSFLOW_TOKEN}`,
      },
    });
    
    const data = await response.json();

    Python

    import os
    
    import requests
    
    response = requests.get(
        "https://api.nessflow.com/v1/me",
        headers={
            "Authorization": f"Bearer {os.environ['NESSFLOW_TOKEN']}",
        },
        timeout=30,
    )
    response.raise_for_status()
    data = response.json()

    Exemple de réponse

    {
        "data": {
            "token": {
                "id": "0190f5a2-7c4e-7b1a-9d3e-2f6b8c1a4e57",
                "name": "Exemple",
                "scopes": [
                    "string"
                ],
                "expires_at": "2026-10-01T09:30:00Z",
                "last_used_at": "2026-10-01T09:30:00Z",
                "created_at": "2026-10-01T09:30:00Z"
            },
            "user": {
                "name": "Exemple",
                "email": "dev@exemple.fr"
            },
            "team": {
                "slug": "string",
                "name": "Exemple"
            },
            "plan": {
                "key": "string",
                "label": "string"
            },
            "api_access": [
                "read"
            ]
        }
    }

    Lire les débits et les quotas de l’offre

    GET /v1/usage

    Rend la consommation de chaque fenêtre de débit, en unités de coût, et les quotas de l’équipe (projets, crawls du mois, mots-clés suivis…), les mêmes jauges que l’écran Consommation. Une limit à null signifie illimité ; 0 signifie non inclus dans l’offre. Ne lisez jamais null comme zéro.

    Scopes requis
    facultatif
    Coût en débit
    1 unité(s)

    Réponses

    • 200 Rate limits and quotas.
    • 401 Missing, invalid or expired token, or a member who left the team.
    • 403 The plan does not include the API (`api.not_in_plan`) or this verb (`api.write_not_in_plan`), or the token lacks a scope (`token.missing_scope`).
    • 429 The plan rate limit is exhausted for one window.

    cURL

    curl "https://api.nessflow.com/v1/usage" \
      -H "Authorization: Bearer $NESSFLOW_TOKEN"

    PHP

    $client = new GuzzleHttp\Client(['base_uri' => 'https://api.nessflow.com/v1/']);
    
    $response = $client->request('GET', 'usage', [
        'headers' => [
            'Authorization' => 'Bearer '.getenv('NESSFLOW_TOKEN'),
        ],
    ]);
    
    $data = json_decode((string) $response->getBody(), true);

    JavaScript

    const response = await fetch('https://api.nessflow.com/v1/usage', {
      headers: {
        Authorization: `Bearer ${process.env.NESSFLOW_TOKEN}`,
      },
    });
    
    const data = await response.json();

    Python

    import os
    
    import requests
    
    response = requests.get(
        "https://api.nessflow.com/v1/usage",
        headers={
            "Authorization": f"Bearer {os.environ['NESSFLOW_TOKEN']}",
        },
        timeout=30,
    )
    response.raise_for_status()
    data = response.json()

    Exemple de réponse

    {
        "data": {
            "rate_limits": [
                {
                    "window": "minute",
                    "window_seconds": 42,
                    "unit": "cost",
                    "limit": 100,
                    "used": 42,
                    "remaining": 100,
                    "resets_in_seconds": 42
                }
            ],
            "quotas": [
                {
                    "entitlement": "string",
                    "used": 42,
                    "limit": 100,
                    "remaining": 100
                }
            ]
        }
    }

    Lister les opérations en cours

    GET /v1/operations

    Ce qui tourne en ce moment pour l’équipe : crawls, recherches de mots-clés, scans de sécurité, pré-vols de projet et synchronisations de backlinks, du plus récent au plus ancien. Une opération dont plus rien ne s’occupe n’est jamais annoncée en cours. La liste est plafonnée ; meta.total dit combien il y en a. Les analyses de journaux, recommandations et analyses sémantiques n’y figurent pas : lisez leurs propres ressources.

    Scopes requis
    projects:read
    Coût en débit
    1 unité(s)

    Réponses

    • 200 OK.
    • 401 Missing, invalid or expired token, or a member who left the team.
    • 403 The plan does not include the API (`api.not_in_plan`) or this verb (`api.write_not_in_plan`), or the token lacks a scope (`token.missing_scope`).
    • 429 The plan rate limit is exhausted for one window.

    cURL

    curl "https://api.nessflow.com/v1/operations" \
      -H "Authorization: Bearer $NESSFLOW_TOKEN"

    PHP

    $client = new GuzzleHttp\Client(['base_uri' => 'https://api.nessflow.com/v1/']);
    
    $response = $client->request('GET', 'operations', [
        'headers' => [
            'Authorization' => 'Bearer '.getenv('NESSFLOW_TOKEN'),
        ],
    ]);
    
    $data = json_decode((string) $response->getBody(), true);

    JavaScript

    const response = await fetch('https://api.nessflow.com/v1/operations', {
      headers: {
        Authorization: `Bearer ${process.env.NESSFLOW_TOKEN}`,
      },
    });
    
    const data = await response.json();

    Python

    import os
    
    import requests
    
    response = requests.get(
        "https://api.nessflow.com/v1/operations",
        headers={
            "Authorization": f"Bearer {os.environ['NESSFLOW_TOKEN']}",
        },
        timeout=30,
    )
    response.raise_for_status()
    data = response.json()

    Exemple de réponse

    {
        "data": [
            {
                "kind": "crawl",
                "project_id": "0190f5a2-7c4e-7b1a-9d3e-2f6b8c1a4e57",
                "started_at": "2026-10-01T09:30:00Z",
                "crawl": {
                    "id": "0190f5a2-7c4e-7b1a-9d3e-2f6b8c1a4e57",
                    "stage": "string",
                    "progress": 42,
                    "pages_crawled": 42,
                    "page_budget": 42
                }
            }
        ],
        "meta": {
            "total": 42,
            "shown": 42
        }
    }

    Référence de l’API Codes d’erreur Documentation de l’API

    Cette page en Markdown