PHPackages                             native-network/social\_json\_api - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. native-network/social\_json\_api

ActiveDrupal-module[API Development](/categories/api)

native-network/social\_json\_api
================================

This module enables a JSON API for your Open Social site.

2.0.0(6y ago)04GPL-2.0+PHP

Since Jun 14Pushed 6y ago1 watchersCompare

[ Source](https://github.com/native-network/social_json_api_8.7.x)[ Packagist](https://packagist.org/packages/native-network/social_json_api)[ Docs](https://bitbucket.org/goalgorilla/social_json_api)[ RSS](/packages/native-network-social-json-api/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependencies (5)Versions (3)Used By (0)

Social JSON API
===============

[](#social-json-api)

Social JSON API provides an API which can be used with the following entities:

- comment
- event\_enrollment
- file
- group
- group\_content
- node
- post
- profile
- taxonomy\_term
- user

It works out of the box for these entities. However you'll need to do some configuration to access the API (authentication and authorization).

Installation
------------

[](#installation)

1. Enable this module and all its dependencies.
2. The module will automatically create a folder outside your docroot (web/html) directory where you can store the public and private key combination. By default this is: `private://oauth_api_keys/`.
3. If your site has a sitemanager role it will automatically assign a bunch of permissions to this role.
4. Check if all the right entities are enabled in social\_json\_api\_entity\_type\_alter().

Configuration
-------------

[](#configuration)

The API System which is implemented has multiple authentication grants available. These are all allowed in Open Social by default.

To determine which grant is applicable for your use-case please read the [oauth2 documentation](http://oauth2.thephpleague.com/authorization-server/which-grant/) For demo purposes we assume you'll want the password grant, which means that you'll login with account details of a given user.

1. Go to /admin/config/people/simple\_oauth and configure the OAuth settings to your needs. Double check the expiration times and if the keys exist. During development you can set the access token expiration time on a higher value. Usually this should be below 300 seconds.
2. Create a consumer on /admin/config/services/consumer/add
3. Fill in at least:
    - Label: The label for your consumer (e.g. My CRM system)
    - User: leave this empty
    - New secret: Generate a secure string here (e.g. using Lastpass, but do remember this, you'll need this later)
    - Is confidential: yes
    - Is this consumer 3rd party?: yes
    - Redirect URL: leave empty
    - Scopes: select the roles you want to use here, e.g. Sitemanager (this determines the permissions for the API)
4. After saving the consumer you'll go to the consumer overview where you can see the consumer uuid.

Authentication
--------------

[](#authentication)

Now you can get access to the API by doing a POST Request on `/oauth/token` with the following body:

```
grant_type:password
client_id:uuid
client_secret:secret
username:test
password:test

```

Just fill in the client\_id, client\_secret, username and password accordingly. You will receive an access\_token and refresh\_token which you can use in subsequent requests, e.g. in refresh\_token requests or you can use the same access\_token during the expire time.

More info here:

Documentation
-------------

[](#documentation)

Some more information is available on your site on: `/admin/config/opensocial/social-json-api`

You will also find a link to the documentation for your API there. The documentation is automatically generated and displayed with [ReDoc](https://github.com/Rebilly/ReDoc).

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity60

Established project with proven stability

 Bus Factor1

Top contributor holds 61.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2527d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5c14105746ddd0dc82176c70d62b5a50a32f1c1b96013bd5f9550f9d65c3724e?d=identicon)[proofoftom](/maintainers/proofoftom)

---

Top Contributors

[![jaapjan](https://avatars.githubusercontent.com/u/2848293?v=4)](https://github.com/jaapjan "jaapjan (8 commits)")[![Kingdutch](https://avatars.githubusercontent.com/u/327697?v=4)](https://github.com/Kingdutch "Kingdutch (3 commits)")[![bramtenhove](https://avatars.githubusercontent.com/u/7124754?v=4)](https://github.com/bramtenhove "bramtenhove (2 commits)")

---

Tags

jsonapidrupal

### Embed Badge

![Health badge](/badges/native-network-social-json-api/health.svg)

```
[![Health](https://phpackages.com/badges/native-network-social-json-api/health.svg)](https://phpackages.com/packages/native-network-social-json-api)
```

###  Alternatives

[nathanmac/parser

Simple PHP Parser Utility Library for API Development

2151.0M3](/packages/nathanmac-parser)[nilportugues/jsonapi-bundle

Symfony 2 &amp; 3 JSON API Transformer Package

11446.0k](/packages/nilportugues-jsonapi-bundle)[cloudcreativity/json-api-testing

PHPUnit test helpers to check JSON API documents.

141.6M3](/packages/cloudcreativity-json-api-testing)[walle89/swedbank-json

Unofficial API client for the Swedbank's and Sparbanken's mobile apps in Sweden.

752.5k](/packages/walle89-swedbank-json)[wayofdev/laravel-symfony-serializer

📦 Laravel wrapper around Symfony Serializer.

2113.6k](/packages/wayofdev-laravel-symfony-serializer)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
