# Search posts by keyword.

Search posts by keyword with EnvoAPI. Sort by relevance or recency, filter by posting time or content type, and paginate through results.

`GET https://api.envoapi.com/v1/search/posts`

Operation ID: `searchPostsByKeyword`

## Authentication

See [Authentication](https://docs.envoapi.com/guides/authentication.md). Security alternatives (each object is one alternative):

```json
[
  {
    "BearerApiKey": []
  }
]
```

BearerApiKey:

```json
{
  "type": "http",
  "scheme": "bearer",
  "bearerFormat": "envo_<66 Base64url characters>"
}
```

## Credits

Uses the current Profile base Credit cost. Check your dashboard for current costs; example charges are illustrative.

## Parameters

### keywords

Location: query. Required: yes.

Schema: {"type":"string","minLength":1,"maxLength":500}

Example:

```json
"Microsoft"
```

### offset

Location: query. Required: no.

Schema: {"default":0,"type":"integer","minimum":0,"maximum":10000}

Example:

```json
0
```

### sort

Location: query. Required: no.

Schema: {"default":"relevance","type":"string","enum":\["relevance","recent"]}

Example:

```json
"relevance"
```

### postedWithin

Location: query. Required: no.

Schema: {"type":"string","enum":\["day","week","month"]}

Example:

```json
"week"
```

### contentType

Location: query. Required: no.

Schema: {"type":"string","enum":\["videos","photos","jobs","liveVideos","documents","collaborativeArticles"]}

Example:

```json
"videos"
```

## Request example

```bash
curl "https://api.envoapi.com/v1/search/posts?keywords=Microsoft&offset=0&sort=relevance" \
  --header "Authorization: Bearer $ENVO_API_KEY" \
  --header "Accept: application/json"
```

## Responses

### 200

Posts matching the keywords.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **X-Credits-Remaining**: Credits left on your account after this call. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).

Content type: `application/json`.

Schema: [LinkedInV2SearchPostsSuccess](https://docs.envoapi.com/api/schemas/LinkedInV2SearchPostsSuccess.md)

| Field           | Required                  | Schema                                                                                                                                                                                                                           | Description                                             |
| --------------- | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- |
| data            | yes                       | [SearchPostsData](https://docs.envoapi.com/api/schemas/SearchPostsData.md)                                                                                                                                                       | The result of the call. Fields we cannot fill are null. |
| data.posts      | yes (when parent present) | {"maxItems":50,"type":"array","items":{"$ref":"#/components/schemas/SearchPost"}}                                                                                                                                                |                                                         |
| meta            | yes                       | {"type":"object","properties":{"paging":{"$ref":"#/components/schemas/SearchPostsPaging"},"creditCost":{"$ref":"#/components/schemas/NonNegativeSafeInteger"}},"required":\["paging","creditCost"],"additionalProperties":false} | Information about the call itself.                      |
| meta.paging     | yes (when parent present) | [SearchPostsPaging](https://docs.envoapi.com/api/schemas/SearchPostsPaging.md)                                                                                                                                                   |                                                         |
| meta.creditCost | yes (when parent present) | [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md)                                                                                                                                         | How many credits this call used.                        |

Response example:

```json
{
  "data": {
    "posts": [
      {
        "url": "https://www.linkedin.com/posts/partner-development-group_microsoftpartners-partnergrowth-microsoftecosystem-activity-7505633056477868032-DpyU",
        "text": "\"We just need more Microsoft introductions.\" It's one of the most common things we hear in the Microsoft partner ecosystem. More access. More seller relationships. More introductions to customers. More visibility within Microsoft. And to be clear, strong Microsoft relationships matter. Introductions create opportunities. But here's the question: What would happen if Microsoft introduced you to 10 ideal customers tomorrow? Would your positioning be clear? Would your customer outcomes be easy to explain? Would every leader on your team tell the same story? Would your sales process convert the opportunity? Or would those introductions expose challenges that already exist today? One of the most consistent patterns we observe is that partners often identify an access problem when the real constraint is somewhere else. Positioning. Messaging. Ownership. Readiness. Execution. In our latest article, we explore why additional introductions rarely solve those challenges and why the highest-performing partners focus as much on readiness as they do on access. Introductions create opportunity. Readiness converts opportunity into growth. 👇 Read the article below. Microsoft AI Cloud Partner Program Microsoft Power Platform Community Microsoft 365 Partner IAMCP Microsoft Community  #MicrosoftPartners #PartnerGrowth #MicrosoftEcosystem #CoSell #Marketplace #MSP #BusinessGrowth #PartnerStrategy #MicrosoftAI #ChannelPartners",
        "author": {
          "kind": "company",
          "name": "Partner Development Group",
          "headline": "1,941 followers",
          "url": "https://www.linkedin.com/company/partner-development-group"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 6,
        "commentCount": 2,
        "repostCount": 1
      },
      {
        "url": "https://www.linkedin.com/posts/ambrecher_microsoftpartners-cosell-microsoftecosystem-activity-7503459739003940865-W1P-",
        "text": "Most Microsoft partners believe Microsoft sellers don't engage with their value proposition because they aren't convinced by it. I don't think that's usually the problem. Microsoft sellers hear variations of the same messages every day: • We help customers with AI • We drive digital transformation • We accelerate innovation • We deliver business outcomes None of those statements are wrong. The challenge is that they're often difficult to distinguish from dozens of similar conversations sellers have every month. Most partners focus on making their value proposition more impressive. The partners that stand out focus on making their value proposition more memorable. Microsoft sellers aren't typically asking: \"Do I believe this partner?\" They're asking: \"When would I bring this partner into a customer conversation?\" That's a very different question. The strongest partner messages don't just explain what they do. They make it immediately clear: • What customer problem they solve • Which customers benefit most • What outcomes they create • Why they're different • When a seller should engage them I wrote this article to explore why many partner value propositions get ignored, why clarity often matters more than complexity, and why the most effective messages aren't necessarily the most impressive. They're the most memorable. If a Microsoft seller heard your value proposition today, would they immediately know when to use you? Microsoft AI Cloud Partner Program Microsoft Power Platform Community Microsoft 365 Partner IAMCP Microsoft Community  #MicrosoftPartners #CoSell #MicrosoftEcosystem #PartnerStrategy #MicrosoftCloud #AllianceManagement #MicrosoftSales #ChannelLeadership #GoToMarket #PartnerDevelopment #CustomerSuccess #PDG",
        "author": {
          "kind": "profile",
          "name": "Andrew Brecher",
          "headline": "Chief Strategy Officer | Microsoft Partner Growth Specialist",
          "url": "https://www.linkedin.com/in/ambrecher"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 49,
        "commentCount": 2,
        "repostCount": 5
      },
      {
        "url": "https://www.linkedin.com/posts/activity-7505694715753893889-OD3O",
        "text": "Yes, we’re hiring again... and I’m super excited! We’re looking for great people to join us at Microsoft. If you’re passionate about customer success, technology, AI, and helping customers turn innovation into real business outcomes, I’d love for you to take a look. Know someone who would be a great fit? Please share this with them or tag them below. Come join us! There’s a lot happening, and an incredible opportunity to help shape what comes next. 😊 https://lnkd.in/ghWuBZic https://lnkd.in/g7qkVTqw #Microsoft #Hiring #CustomerSuccess #AI #Careers #Technology",
        "author": {
          "kind": "profile",
          "name": "Kip N.",
          "headline": "Enterprise AI & Business Transformation Leader | Strategy & Scale at Microsoft | Conference Speaker | Building High-Performance Organizations",
          "url": "https://www.linkedin.com/in/kipng"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 62,
        "commentCount": 6,
        "repostCount": 6
      },
      {
        "url": "https://www.linkedin.com/posts/netlogicmy365_msp-microsoft365-managedservices-activity-7503902078466097152-cRCL",
        "text": "Every week, we talk to MSPs that are trying to grow their Microsoft 365 practice. And we keep hearing the same challenges: \"We're not sure what services we should be offering.\" \"We know Microsoft, but we struggle to package it.\" \"We're losing deals to larger providers.\" \"We're spending too much time figuring things out ourselves.\" \"We don't know how to turn Microsoft 365 into recurring revenue.\" The reality is that Microsoft 365 isn't just licensing anymore. It's security. It's compliance. It's endpoint management. It's identity. It's data protection. It's AI readiness. And the MSPs that understand how those pieces fit together are creating entirely new revenue opportunities. That's why we put together this article. Not to talk about product releases. Not to talk about licensing changes. But to talk about what successful MSPs are doing differently when it comes to Microsoft 365. 📖 Read the article below: #MSP #Microsoft365 #ManagedServices #MicrosoftPartner #BusinessPremium #MSPGrowth #Cybersecurity #MicrosoftCopilot #CloudServices #MSPCommunity",
        "author": {
          "kind": "company",
          "name": "Netlogic My365",
          "headline": "527 followers",
          "url": "https://www.linkedin.com/company/netlogicmy365"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 1,
        "commentCount": 0,
        "repostCount": 0
      },
      {
        "url": "https://www.linkedin.com/posts/david-thompson-5b112b8_after-nearly-13-years-and-three-years-as-activity-7505732426854256640-0zOs",
        "text": "After nearly 13 years (and three years as a consultant), today is my last day at Microsoft.    It’s amazing how far we’ve come in my time here: from selling committed Office licenses, to moving productivity to the cloud with BPOS and Office 365, to expanding the platform through Microsoft 365 and E3-to-E5, to driving cloud migrations and Azure consumption, to Data & AI and application modernization, to integrated Security, then Copilot and agents, and now Microsoft 365 E7 and Frontier Transformation. It’s just been awesome to be on this ride with so many talented and amazing individuals.      There are too many names to mention here, but I want you all to know—both partners and MSFT teammates—that I’m thankful for the amazing people I’ve had the privilege of working with, learning from, and building alongside.    A special thank you to my managers, mentors, teammates, and friends who made my time at Microsoft so amazing.     I’m truly grateful for every experience along the way—the wins and the losses, the challenges and the moments when we were truly in the trenches, the laughter and memories, and even the mistakes that became some of our most valuable lessons.    I’ll carry these lessons, memories, and relationships with me forever.     While saying goodbye is never easy, I’m very much looking forward to what’s ahead. More to come on that soon!     Thank you, Microsoft, for an unforgettable experience. And to everyone I’ve worked with along the way—let’s stay connected!",
        "author": {
          "kind": "profile",
          "name": "David Thompson",
          "headline": "Chief of Staff @ Microsoft | MBA, PMP, CSSGB",
          "url": "https://www.linkedin.com/in/david-thompson-5b112b8"
        },
        "contentType": "image",
        "isRepost": false,
        "reactionCount": 162,
        "commentCount": 32,
        "repostCount": 1
      },
      {
        "url": "https://www.linkedin.com/posts/kamalnathravi_softwareassetmanagement-microsoft365-itassetmanagement-activity-7503906917422084096-O-3s",
        "text": "𝗬𝗼𝘂𝗿 𝘀𝗼𝗳𝘁𝘄𝗮𝗿𝗲 𝗯𝘂𝗱𝗴𝗲𝘁 𝗺𝗮𝘆 𝗯𝗲 𝗹𝗲𝗮𝗸𝗶𝗻𝗴 𝗺𝗼𝗻𝗲𝘆 𝗲𝘃𝗲𝗿𝘆 𝗺𝗼𝗻𝘁𝗵.🚨 Not because you are buying the wrong tools. Because you may be paying for unused licenses, duplicate apps, and subscriptions nobody is tracking. Ask yourself: 📌Do you know who is actually using each license? 📌Can you spot unused software before renewal? 📌Are former employees still assigned paid licenses? 📌Are different teams paying for similar tools? 📌Can you see upcoming renewals in one place? If the answer is “not easily,” your software management process needs better visibility. That is where Microsoft Software Asset Management makes a difference. The goal is simple, Know what you own. Know what is being used. Stop paying for what you do not need. See where your software spend can be optimized.⬇️ #softwareassetmanagement #microsoft365 #itassetmanagement #sam #assetmanagement #softwarelicensing #sharepoint #microsoft #asset365",
        "author": {
          "kind": "profile",
          "name": "Kamalnath Ravi",
          "headline": "Product Consultant | Driving SaaS growth | Content Marketing | SEO | SMM",
          "url": "https://www.linkedin.com/in/kamalnathravi"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 8,
        "commentCount": 0,
        "repostCount": 1
      },
      {
        "url": "https://www.linkedin.com/posts/pangn_senior-product-marketing-manager-microsoft-activity-7505714842377420800-Bo-h",
        "text": "#Hiring #JobOpportunity  If you're fascinated by the intersection of technology, AI, cybersecurity, risk management, regulation, and geopolitics, this may be one of the most unique PMM opportunities at Microsoft. You'll help shape Microsoft's digital sovereignty strategy, influence product investments and roadmap priorities, work closely with customers and policymakers, and help define a market that is still taking shape globally. This is a rare opportunity to work on a business problem that extends far beyond technology. The decisions governments and organizations make today about AI, cloud, data, resilience, and control will shape the future digital economy. Please share with anyone who might be a great fit.",
        "author": {
          "kind": "profile",
          "name": "NUTTINEE (Pang) Ngernsupaluck",
          "headline": "Senior Director, Microsoft Digital Sovereignty",
          "url": "https://www.linkedin.com/in/pangn"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 8,
        "commentCount": 2,
        "repostCount": 2
      },
      {
        "url": "https://www.linkedin.com/posts/squarenet_microsoftsurface-surfacelaptop-surfaceforbusiness-activity-7505577639407960066-DbHd",
        "text": "Buying a business laptop should be a strategic decision rather than a simple price comparison. Businesses should consider employee roles, performance, screen size, AI capabilities, security, connectivity, deployment and long-term support before making a purchase. The Microsoft Surface Laptop for Business lineup gives organizations flexible options for modern work, while Square Network Solutions, a Microsoft Surface Authorized Reseller, can help businesses select the right device for their requirements. 📞 [phone removed] 🌐 www.squarenet.in #microsoftsurface #surfacelaptop #surfaceforbusiness #microsoftsurfaceauthorizedreseller #microsoftsurfacereseller #squarenetworksolutions #businesslaptop #enterpriselaptop #businesscomputing #microsoftcopilot #copilotpc #windows11pro #microsoft365 #aipc #aiforbusiness #businessproductivity #enterpriseit #itprocurement #enterpriseprocurement #laptopbuying #laptopupgrade #businesstechnology #modernworkplace #digitalworkplace #hybridwork #technologyindia #chennai #tamilnadu #surfaceindia #surfacepartner #authorizedreseller #professionaldevices #corporatetechnology #cybersecurity #itmanagement #manageditservices #cloudsolutions #networkinginfrastructure #enterprisecomputing #businessgrowth #futureofwork #worksmarter #productivity #innovation #enterprisehardware #businessleaders #technologyupgrade #smartbusiness #trustedtechnology",
        "author": {
          "kind": "company",
          "name": "Square Network Solutions",
          "headline": "1,546 followers",
          "url": "https://www.linkedin.com/company/squarenet"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 0,
        "commentCount": 0,
        "repostCount": 0
      },
      {
        "url": "https://www.linkedin.com/posts/ryzepartners_microsoftpartners-microsoftcosell-microsoftmarketplace-activity-7503833770282598400-Muqj",
        "text": "Microsoft didn’t raise the bar on co-sell. It stopped taking the partner’s word for it. For years, partners could report the Azure consumption they influenced. In FY27, Microsoft changed the mechanism. Marketplace is becoming the primary path for co-sell at scale, with credit increasingly tied to transactions and activity Microsoft can observe directly. That distinction matters. You can have strong Microsoft relationships. You can have sellers who know your firm and trust your team. You can even be actively working deals together. But does Microsoft’s system see it? That’s the question partners need to be asking now. In our latest article, we break down what changed, why the shift from partner-reported activity to system-observed evidence is bigger than it looks, and what it means for the way partners execute co-sell in FY27. Read “Co-Sell Stopped Being Something You Claim” here: 👇  Rob Fegan Sandie Knight #MicrosoftPartners #MicrosoftCoSell #MicrosoftMarketplace #PartnerStrategy #FY27 #MicrosoftAI #RYZEPartners",
        "author": {
          "kind": "company",
          "name": "RYZE Partners",
          "headline": "793 followers",
          "url": "https://www.linkedin.com/company/ryzepartners"
        },
        "contentType": "article",
        "isRepost": false,
        "reactionCount": 4,
        "commentCount": 0,
        "repostCount": 2
      },
      {
        "url": "https://www.linkedin.com/posts/jcpitie_microsoft365copilot-contentsquare-ai-activity-7505750524517060610-1opi",
        "text": "September means back to school—so here’s a suitably BTS photo of me at Microsoft, back when “Copilot” probably meant the colleague sitting next to me. 😉 This launch feels especially personal: Microsoft Office was the first product I ever worked on, so this is a true full-circle moment. Today, we’re introducing the Contentsquare Agent for Microsoft 365 Copilot—bringing customer journey insights directly into the tools people use every day. No dashboard hopping. No hours spent piecing information together.  Available now and connected in minutes. Thank you to everyone at Contentsquare and Microsoft who made it happen! Nicolas Liebmann Charline Grenet Matthew Howard Jane Koh Bruno PICARD Stanislas ROËLS THOMASSIN Andrew Taylor Helen O. Chris Formosa Chris Adams Ebru Cornet-Oner Virginie Infanti https://lnkd.in/e86biJBx #Microsoft365Copilot #Contentsquare #AI",
        "author": {
          "kind": "profile",
          "name": "Jean-Christophe Pitié",
          "headline": "Chief Marketing Officer & Chief Partner Officer at Contentsquare",
          "url": "https://www.linkedin.com/in/jcpitie"
        },
        "contentType": "image",
        "isRepost": false,
        "reactionCount": 17,
        "commentCount": 1,
        "repostCount": 0
      }
    ]
  },
  "meta": {
    "paging": {
      "offset": 0,
      "limit": 10,
      "returned": 10,
      "hasMore": true,
      "nextOffset": 10
    },
    "creditCost": 1
  }
}
```

### 400

A request parameter is missing or invalid.

A parameter is missing or has a value we cannot use. Read error.details, fix the value and try again.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.

Content type: `application/json`.

Schema: [InvalidRequestErrorResponse](https://docs.envoapi.com/api/schemas/InvalidRequestErrorResponse.md)

### 401

Your API key is invalid or inactive.

Your API key is missing, wrong or switched off. Check it in your dashboard.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.

Content type: `application/json`.

Schema: [InvalidApiKeyErrorResponse](https://docs.envoapi.com/api/schemas/InvalidApiKeyErrorResponse.md)

### 402

Your account does not have enough credits.

Your account has no credits left. Top up, then send a new call.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **X-Credits-Remaining**: Credits left on your account after this call. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).

Content type: `application/json`.

Schema: [InsufficientCreditsErrorResponse](https://docs.envoapi.com/api/schemas/InsufficientCreditsErrorResponse.md)

### 403

Your API key or account cannot access this endpoint.

Your account is suspended or cannot use this endpoint. Resolve the account or its access first.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.

Content type: `application/json`.

Schema: [LookupForbiddenErrorResponse](https://docs.envoapi.com/api/schemas/LookupForbiddenErrorResponse.md)

### 404

The requested resource was not found.

Nothing matched what you sent. Check it for typos.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **X-Credits-Remaining**: Credits left on your account after this call. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).

Content type: `application/json`.

Schema: [ResourceNotFoundErrorResponse](https://docs.envoapi.com/api/schemas/ResourceNotFoundErrorResponse.md)

### 405

Use GET for this endpoint.

The route exists, but the request used a method other than GET. Use the method shown at the top of this page.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **Allow**: Required response header. Schema: {"type":"string","const":"GET"}.

Content type: `application/json`.

Schema: [MethodNotAllowedErrorResponse](https://docs.envoapi.com/api/schemas/MethodNotAllowedErrorResponse.md)

### 406

The response format in your Accept header is not supported.

The Accept header asks for a format we do not send. Ask for JSON with a supported Accept value.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.

Content type: `application/json`.

Schema: [NotAcceptableErrorResponse](https://docs.envoapi.com/api/schemas/NotAcceptableErrorResponse.md)

### 415

The Content-Type in your request is not supported.

The request declared a media type we do not accept. Remove the body or use the documented media type.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.

Content type: `application/json`.

Schema: [UnsupportedMediaTypeErrorResponse](https://docs.envoapi.com/api/schemas/UnsupportedMediaTypeErrorResponse.md)

### 429

Your account has sent too many requests.

Too many calls in a short time. Honor Retry-After; use bounded retries with backoff and jitter.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **Retry-After**: Seconds to wait before you try again. Schema: [PositiveSafeInteger](https://docs.envoapi.com/api/schemas/PositiveSafeInteger.md).

Content type: `application/json`.

Schema: [RateLimitExceededErrorResponse](https://docs.envoapi.com/api/schemas/RateLimitExceededErrorResponse.md)

### 500

A server error prevented the request from completing.

Something failed on our side. Retry only when error.retryable is true.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **X-Credits-Remaining**: Credits left on your account after this call. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).

Content type: `application/json`.

Schema: [InternalServerErrorResponse](https://docs.envoapi.com/api/schemas/InternalServerErrorResponse.md)

### 502

A data source returned an invalid response.

A data source sent back something we could not use. Retry with bounded backoff.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **X-Credits-Remaining**: Credits left on your account after this call. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).

Content type: `application/json`.

Schema: [UpstreamErrorResponse](https://docs.envoapi.com/api/schemas/UpstreamErrorResponse.md)

### 503

The service is unavailable. Check error.retryable before retrying.

Lookups are unavailable for a moment. Follow error.retryable, and Retry-After when it is present.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **Retry-After**: Seconds to wait before you try again. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-Credits-Remaining**: Credits left on your account after this call. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).

Content type: `application/json`.

Schema: [ServiceUnavailableErrorResponse](https://docs.envoapi.com/api/schemas/ServiceUnavailableErrorResponse.md)

### 504

The request timed out.

The lookup ran out of time. Retry with bounded backoff.

* **Date**: Required response header. Schema: [HttpDateHeader](https://docs.envoapi.com/api/schemas/HttpDateHeader.md).
* **Cache-Control**: Do not cache the reply. Schema: [CacheControlHeader](https://docs.envoapi.com/api/schemas/CacheControlHeader.md).
* **X-Request-Id**: A unique ID for this call. Quote it if you contact support. Schema: [RequestId](https://docs.envoapi.com/api/schemas/RequestId.md).
* **Content-Type**: Required response header. Schema: {"type":"string","const":"application/json; charset=utf-8"}.
* **X-Credits-Remaining**: Credits left on your account after this call. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Limit**: The Account's current rolling request ceiling. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Remaining**: Requests remaining in the current rolling window. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).
* **X-RateLimit-Reset**: Whole seconds until capacity resets, rounded up. Schema: [NonNegativeSafeInteger](https://docs.envoapi.com/api/schemas/NonNegativeSafeInteger.md).

Content type: `application/json`.

Schema: [UpstreamTimeoutErrorResponse](https://docs.envoapi.com/api/schemas/UpstreamTimeoutErrorResponse.md)

## Related documentation

* [Authentication](https://docs.envoapi.com/guides/authentication.md)

* [Errors](https://docs.envoapi.com/guides/errors.md)

* [Pagination](https://docs.envoapi.com/guides/pagination.md)

* [Rate limits](https://docs.envoapi.com/guides/rate-limits.md)

* [Search posts by hashtag.](https://docs.envoapi.com/api/operations/searchpostsbyhashtag.md)

* [Get Post details by URL](https://docs.envoapi.com/api/operations/getpostbyurl.md)

* [Get Post details by slug](https://docs.envoapi.com/api/operations/getpostbyslug.md)

* [Get a Post's comments by URL](https://docs.envoapi.com/api/operations/getpostcommentsbyurl.md)

* [Get a Post's comments by slug](https://docs.envoapi.com/api/operations/getpostcommentsbyslug.md)

* [Get Post reactions by URL](https://docs.envoapi.com/api/operations/getpostreactionsbyurl.md)

* [Get Post reactions by slug](https://docs.envoapi.com/api/operations/getpostreactionsbyslug.md)

[Documentation index](https://docs.envoapi.com/llms.txt) · [All endpoints](https://docs.envoapi.com/api/index.md)
