> For the complete documentation index, see [llms.txt](https://codemash.gitbook.io/codemash/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://codemash.gitbook.io/codemash/cloud/logs/integrations/providers/generic-http.md).

# Generic HTTP / OTLP endpoint

Connect Generic HTTP / OTLP endpoint to Logs — coming soon; the card is in Cloud, but Norbix refuses to save it yet.

Sends log entries as HTTP POST requests to an address you own — your own service or an OpenTelemetry collector that takes OTLP logs.

{% hint style="warning" %}
Cloud has no working Generic HTTP / OTLP endpoint integration yet. The **Generic HTTP / OTLP endpoint** card is in the picker and its form opens, but the form has only **Integration Name**, and **Save** is refused: *The 'GenericHttp' logging provider isn't available yet. Support for it is coming soon — for now you can use Norbix Logging or Datadog for project logging.* The same answer comes from the SDK, the CLI and the API. To keep your logs today, use [Norbix Logging](/codemash/cloud/logs/integrations/providers/norbix-logging.md).
{% endhint %}

## Get your credentials

What Generic HTTP / OTLP endpoint will ask for, from its own documentation:

1. Prepare an HTTPS address that accepts POST requests, for example an OpenTelemetry collector with the OTLP/HTTP logs receiver (`https://otel.example.com/v1/logs`). See the [OTLP specification](https://opentelemetry.io/docs/specs/otlp/).
2. If the address needs a header such as `Authorization: Bearer …`, create that token in your own service.

## Connect it in Cloud

**Where:** Logs → Integrations → **Add New Integration** → Generic HTTP / OTLP endpoint · `/projects/<project>/logging/integrations/new/generic-http`

| Field            | Required | What it does                                                                                         | Example       |
| ---------------- | -------- | ---------------------------------------------------------------------------------------------------- | ------------- |
| Integration Name | yes      | The name in your integrations list. The Generic HTTP / OTLP endpoint fields are not in the form yet. | `Log catcher` |

<figure><img src="https://712692422-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHy372bqsaex2cqS3ikhL%2Fuploads%2Fgit-blob-2b684bed95c5dcfd36ec11920e49c77fa42e9587%2Fgeneric-http-form-1.png?alt=media" alt="New Generic HTTP / OTLP endpoint Integration form with only the field Integration Name, filled with Log catcher"><figcaption><p>The form has only the name.</p></figcaption></figure>

<figure><img src="https://712692422-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHy372bqsaex2cqS3ikhL%2Fuploads%2Fgit-blob-e15449ba8d8146d70b3e6728bd795e4040353937%2Fgeneric-http-saved-2.png?alt=media" alt="After Save: the toast Bad request and the red text The &#x27;GenericHttp&#x27; logging provider isn&#x27;t available yet."><figcaption><p>Save is refused.</p></figcaption></figure>

## Test and set as default

There is nothing to test until Generic HTTP / OTLP endpoint can be saved. When it can, **Test integration** works as described in [Test an integration](/codemash/cloud/logs/integrations/test.md); logging has no default integration ([Default integration](/codemash/cloud/logs/integrations/set-default.md)).

## Common errors

| Message                                                                                                                                                    | Cause                                             | Fix                                                                                  |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------- | ------------------------------------------------------------------------------------ |
| The 'GenericHttp' logging provider isn't available yet. Support for it is coming soon — for now you can use Norbix Logging or Datadog for project logging. | Every save of Generic HTTP / OTLP endpoint today. | Use [Norbix Logging](/codemash/cloud/logs/integrations/providers/norbix-logging.md). |

## Do it from code

```ts
const { id } = await norbix.hub.logs.saveLoggingIntegration({
  projectId,
  integration: {
    provider: 'GenericHttp',
    integrationName: 'Log catcher',
    isEnabled: true,
  } as any, // the TS type knows only the shared fields
});
// throws: The 'GenericHttp' logging provider isn't available yet. …
```

```sh
norbix hub logs logging integration save --projectId "$NORBIX_PROJECT_ID" --integration '{"provider":"GenericHttp","integrationName":"Log catcher","isEnabled":true}'
```

The provider is written `GenericHttp` in requests. The client setup is on the [Logs page](/codemash/cloud/logs.md#use-it-from-code). API: [Save Logging Integration](/codemash/api-reference/logs/integrations/save-logging-integration.md)
