Skip to content

Latest commit

 

History

History
167 lines (153 loc) · 10.8 KB

index.md

File metadata and controls

167 lines (153 loc) · 10.8 KB

API Platform documentation

The Distribution: Create Powerful APIs with Ease

  1. Creating a Fully Featured API in 5 Minutes
  2. Testing and Specifying the API

The API Component

  1. Introduction
  2. Getting Started
    1. Installing API Platform Core
    2. Before Reading this Documentation
    3. Mapping the Entities
  3. Configuration
  4. Operations
    1. Enabling and Disabling Operations
    2. Configuring Operations
    3. Subresources
    4. Creating Custom Operations and Controllers
      1. Recommended Method
      2. Alternative Method
  5. Overriding Default Order
  6. Filters
    1. Doctrine ORM Filters
      1. Search Filter
      2. Date Filter
        1. Managing null Values
      3. Boolean Filter
      4. Numeric Filter
      5. Range Filter
      6. Exists Filter
      7. Order filter
        1. Using a Custom Order Query Parameter Name
      8. Filtering on Nested Properties
      9. Enabling a Filter for All Properties of a Resource
    2. Serializer Filters
      1. Group Filter
      2. Property Filter
    3. Creating Custom Filters
      1. Creating Custom Doctrine ORM Filters
        1. Using Doctrine Filters
      2. Overriding Extraction of Properties from the Request
    4. ApiFilter Annotation
  7. The Serialization Process
    1. Overall Process
    2. Available Serializers
    3. The Serialization Context, Groups and Relations
      1. Configuration
    4. Using Serialization Groups
    5. Using Different Serialization Groups per Operation
      1. Embedding Relations
      2. Normalization
      3. Denormalization
    6. Changing the Serialization Context Dynamically
    7. Changing the Serialization Context on a Per Item Basis
    8. Name Conversion
    9. Decorating a Serializer and Add Extra Data
    10. Entity Identifier Case
    11. Embedding the JSON-LD Context
  8. Validation
    1. Using Validation Groups
    2. Dynamic Validation Groups
    3. Error Levels and Payload Serialization
  9. Error Handling
    1. Converting PHP Exceptions to HTTP Errors
  10. Pagination 1. Disabling the Pagination 2. Changing the Number of Items per Page 3. Partial Pagination
  11. The Event System
  12. Content Negotiation
    1. Enabling Several Formats
    2. Registering a Custom Serializer
    3. Creating a Responder
    4. Writing a Custom Normalizer
  13. Using External JSON-LD Vocabularies
  14. Extending JSON-LD context
  15. Data Providers
    1. Custom Collection Data Provider
    2. Custom Item Data Provider
    3. Injecting the Serializer in an ItemDataProvider
  16. Extensions
    1. Custom Extension
    2. Filter upon the current user
  17. Security
  18. Performance
    1. Enabling the Built-in HTTP Cache Invalidation System
    2. Enabling the Metadata Cache
    3. Using PPM (PHP-PM)
    4. Doctrine Queries and Indexes
      1. Search Filter
      2. Eager Loading
        1. Max Joins
        2. Force Eager
        3. Override at Resource and Operation Level
        4. Disable Eager Loading
      3. Partial Pagination
  19. Operation Path Naming
    1. Configuration
    2. Create a Custom Operation Path Naming
      1. Defining the Operation Path Naming
      2. Registering the Service
      3. Configure it
  20. Accept application/x-www-form-urlencoded Form Data
  21. FOSUserBundle Integration
    1. Installing the Bundle
    2. Enabling the Bridge
    3. Creating a User Entity with Serialization Groups
  22. Adding a JWT authentication using LexikJWTAuthenticationBundle
    1. Testing with Swagger
    2. Testing with Behat
  23. NelmioApiDocBundle integration
  24. AngularJS Integration
    1. Restangular
    2. ng-admin
  25. Swagger Support
    1. Override Swagger documentation
  26. GraphQL Support
    1. Overall View
    2. Enabling GraphQL
    3. GraphiQL
  27. Handling Data Transfer Objects (DTOs)
  28. Handling File Upload with VichUploaderBundle

The Schema Generator Component: Generate Data Models from Open Vocabularies

  1. Introduction
  2. Getting Started
  3. Configuration

The Admin Component: Create a Fancy and Fully Featured Administration Interface

  1. Introduction
    1. Features
  2. Getting Started
    1. Installation
    2. Creating the Admin
    3. Customizing the Admin
      1. Using Custom Components
      2. Managing Files and Images
      3. Using a Custom Validation Function or Inject Custom Props
  3. Authentication Support
  4. Handling Relations to Collections
    1. Using an Autocomplete Input for Relations

The Client Generator Component: Scaffold Progressive Web Apps and Native Apps

  1. Introduction
    1. Features
  2. React generator
  3. Vue.js generator
  4. Troubleshooting

Deployment

  1. Introduction
  2. Deploying to a Kubernetes Cluster
  3. Deploying an API Platform App on Heroku

Extra

  1. The Release Process
  2. The Project's Philosophy
  3. Troubleshooting
  4. Contribution Guides
  5. Contributor Code Of Conduct