> ## Documentation Index
> Fetch the complete documentation index at: https://www.ayrshare.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Node.js NPM

> Integrieren Sie die Ayrshare-API in Ihre Node-App mit dem Social-API-NPM-Paket

## Überblick

Ayrshares [Social-API-NPM-Paket](https://www.npmjs.com/package/social-media-api) ermöglicht Ihnen die Integration der Ayrshare-API in Ihre Node.js-App.

### Installation

Installieren Sie das Social-API-NPM-Paket, wenn Sie Node auf der Serverseite verwenden.
Das Paket vereinfacht die Aufrufe, indem es die RESTful-Aufrufe kapselt.

```bash theme={"system"}
npm i social-media-api
```

<Info>Beziehen Sie Ihren geheimen API-Key im [Ayrshare-Dashboard](https://app.ayrshare.com/).</Info>

### Allgemeine Verwendung

Beispiele für Post, History und Delete:

<Info>
  **Posten auf X/Twitter?** Ab dem 31. März 2026 erfordern X/Twitter-Operationen über Ayrshare Ihre eigenen X-Developer-App-Zugangsdaten – Ayrshare erzwingt dies bei jedem X-Aufruf. Fügen Sie Ihrer Anfrage die 2 BYO-Header hinzu. Details finden Sie im [Einrichtungsleitfaden](/dashboard/connect-social-accounts/x-twitter-byo-keys).
</Info>

Ab v1.3.0 enthält das SDK einen Helfer `setTwitterByo(apiKey, apiSecret)`, der die beiden erforderlichen `X-Twitter-OAuth1-*`-Header an jede nachfolgende Anfrage anhängt:

```javascript theme={"system"}
const SocialPost = require("social-media-api");
const social = new SocialPost(API_KEY)
  .setTwitterByo(MY_X_API_KEY, MY_X_API_SECRET);

await social.post({
  post: "Hello from BYO",
  platforms: ["twitter"]
});
```

Verwenden Sie `clearTwitterByo()`, um die Header zu entfernen – nützlich beim Wiederverwenden einer SDK-Instanz über mehrere Mandanten hinweg:

```javascript theme={"system"}
social.clearTwitterByo().setTwitterByo(nextTenant.key, nextTenant.secret);
```

```javascript theme={"system"}
const SocialPost = require("social-media-api");
const API_KEY = "API KEY"; // get an API Key at ayrshare.com
const social = new SocialPost(API_KEY);

const run = async () => {
  /** post */
  const post = await social
    .post({
      post: "One more time",
      platforms: ["twitter", "facebook", "linkedin"],
      profileKey: "DJKJDK-SKDJKDJF" // used with a User Profile
    })
    .catch(console.error);
  console.log(post);

  /** history */
  const history = await social.history().catch(console.error);
  console.log(history);

  /** delete */
  const deletePost = await social.delete({ id: post.id }).catch(console.error);
  console.log(deletePost);
};

run();
```

### Video-Überblick zum Social-Media-API-NPM-Paket

<div class="video-container">
  <iframe width="560" height="315" src="https://www.youtube.com/embed/OMtj2h6sW6U" title="Social Media API NPM Package" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen />
</div>

Über eine API in Social Media posten

### Profile Key

Sie können den Profile Key für ein User Profile im Body einer POST-Anfrage oder in der Query einer GET-Anfrage mit dem Feld `profileKey` angeben.

### Social-API-Demo

Für eine Node.js-Beispielintegration (mit den RESTful-API-Aufrufen) siehe das GitHub-Repository:

<Card title="Social-API-Demo-Code" icon="github" href="https://github.com/ayrshare/social-api-demo" horizontal>
  Die Social-API-Demo ist eine Webanwendung, mit der Nutzer Inhalte gleichzeitig für mehrere Social-Media-Plattformen
  verfassen, planen und posten können.
</Card>

### Weitere Informationen und Dokumentation

<ul class="custom-bullets">
  <li>[NPM-Paket](https://www.npmjs.com/package/social-media-api)</li>
  <li>[GitHub-Repository](https://github.com/ayrshare/social-media-api)</li>
  <li>[Issue-Diskussion](https://github.com/ayrshare/social-media-api/issues)</li>
</ul>
