Find Jobs
Hire Freelancers

Build GraphQL API on AWS Amplify using AppSync, Cognito, DynamoDB, Storage and Push Notifications

$25-50 USD / hour

Cancelled
Posted almost 4 years ago

$25-50 USD / hour

Build an API in AppSync that uses approximately 10 types. Most of the relationships between the types are one-to-many, there are a couple of many-to-many relationships. The API will use DynamoDb for the backend, and Cognito for user authentication. Recommend best practice for integrating Appsync API with Cognito to query user custom attributes. For example, we need to decide whether custom user attributes will be stored in Cognito, or the an AppSync type. The Appsync API will also use Amplify Storage to store images and video, which will be part of the API schema. One of the types will include location data in the form of GPS coordinates. We'll need to design AppSync integration with ElasticSearch to support geo searches. Design mutations for creating data Design queries for retrieving data Design subscriptions for real-time publishing of changes Support client use of AWS DataStore for offline sync of data This is a draft of the current schema that we will use as a starting point: schema { query:Query } type Query { getSensors: [Sensor] } type Sensor @model { id: ID! image_url: String status: String battery: Int productName: String serialNumber: String } type Agency @model { id: ID! name: String! abbreviation: String! patchImage: Media # TODO: refactor stations: [Station] @connection(name: "AgencyStations") } type Station @model { id: ID! name: String! abbreviation: String! patchImage: Media # TODO: refactor address1: String! address2: String city: String state: String postalCode: String agency: Agency @connection(name: "AgencyStations") units: [Unit] @connection(name: "StationUnits") } type Unit @model { id: ID! name: String! # TO DO: add phone number for SMS stations: Station @connection(name: "StationUnits") officers: [Officer] @connection(name: "UnitOfficers") } type Officer @model { id: ID! firstName: String! middleInitial: String! lastName: String! badgeNumber: String idImage: Media # TO DO: refactor deviceToken: String custodies: [Custody] @connection(name: "OfficerCustodies") unit: Unit @connection(name: UnitOfficers) } type Custody @model { id: ID! sensor: Sensor @connection(fields: ["sensorID"]) sensorID: ID! ageUpper: Int ageLower: Int ageActual: Int gender: String currentOfficerID: String currentStatus: currentStatus officer: officer @connection(name: OfficerCustodies) # Current officer of record for custody media: [Media] # TO DO: refactor custodyState: [CustodyState] # TO DO: refactor custodyLocations: [Location] # TO DO: refactor officerOfRecord: [CustodyOfficerOfRecord] # TO DO: refactor } type CustodyOfficerOfRecord @model (queries: null) @key(name: "byOfficer", fields: ["officerID", "officerID"]) @key(name: "byCustody", fields: ["custodyID", "custodyID"]) { id: ID! officerID: ID! custodyID: ID! createdTime: Int! officer: Officer! @connection(fields: ["officerID"]) custody: Custody! @connection(fields: ["custodyID"]) } enum currentStatus { Active Inactive } type CustodyState { createdTime: Int! cp_priority: Int cp_state: String cp_type: String cp_message: String custodyStatus: CustodyStatus } type CustodyStatus { createdTime: Int! type: String timerType: String title: String eventUtcTimestamp: Int intervalTimeInSeconds: Int } type Location { createdTime: Int! longitude: Float! latitude: Float! } type Media @model { id: ID! createdTime: AWSTimestamp! type: MediaType! name: String! description: String! s3Bucket: String! s3Region: String! s3Key: String! } enum MediaType { Image Video }
Project ID: 26772621

About the project

6 proposals
Remote project
Active 4 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
✨✨✨ Hello, how are you? ✨✨✨ I have just read your description in detail so now I am extremely exciting with your project. I am a professional web expert with 8 years experience. so I am sure I can provide the beautiful website that feel like user friendly in a short time. GraphQL API , AWS Amplify , codeigniter, DynamoDB, Storage and Push Notifications lie full in experienced and skill area. I am sure i can complete your requirements for a day. Please contact me if you are looking for a GENUINE developer in here Looking forward to hearing back from you...
$25 USD in 40 days
0.0 (0 reviews)
0.0
0.0
6 freelancers are bidding on average $37 USD/hour for this job
User Avatar
Hello,   Our team has a huge experience in NoSQL Couch & Mongo, Amazon Web Services, Amazon S3, as a result, we can successfully complete this project. Having the required skills, we will be glad to help you.   We have 20 years of strong experience in outsourced web development, software development, managed services, and we provide 24/7 technical support. As well as we guarantee Canadian quality.   Please, review our profile to find detailed information about our company and our portfolio. Feel free to contact us and discuss all the details. Best regards, Sales department Tangram Canada Inc.
$25 USD in 5 days
4.8 (16 reviews)
6.2
6.2
User Avatar
Hello, How do you do? API expert here I have checked job detail with great care and very interested in your project Because I have strong skills and rich experiences in GraphQL API Please feel free to contact me with more detail soon Best Regards Eric
$50 USD in 40 days
4.9 (5 reviews)
3.8
3.8
User Avatar
Hello! I am a senior AWS GraphQl Expert and I have experienced for +3 years. I am very familiar with AWS-amplify project including cognito, Lamda, GraphQL, s3 bucket. I have all the skills you want and I am very interested in your project. I am free now and I will start work immediately. Please send me your detail. I will guarantee well commented, robust and high quality code and good communication skill. I am sure that I can complete our project in time. Looking forward to hearing from you. Thanks.
$35 USD in 40 days
5.0 (2 reviews)
3.8
3.8
User Avatar
Hello I'm experienced with Amazon Web Services (AWS) like: Lambda, DynamoDB, CloudFront, Route53, Certificate Manager, API Gateway, Cognito, RedShift, RDS, S3, SES, IAM, EC2, AWS Lambda, and other services. Backend/Server-side Skills: - REST / GraphQL API development - NodeJS, Golang, Python 3 - AWS Lambda, Prisma, Hasura - RabbitMQ, Kinesis, SQS, SNS - MySQL / PostgreSQL; Redis - ElasticSearch, MongoDB
$38 USD in 40 days
0.0 (0 reviews)
0.0
0.0
User Avatar
Hello, client Thank you for sharing your project. I can help with my expertise. I have many experience with building GraphQL API and AWS. I am innovative and strategic thinking professional with a proven track record of consistently going above and beyond in meeting customer needs and providing more value to the product than what the customer is paying for. I ensure the highest quality of products and 100% satisfaction through my work. I hope we can discuss more details in chat. I'll look forward to hearing from you soon. Best Regards. Thanks so much for your consideration. Nikita
$50 USD in 40 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of UNITED STATES
San Francisco, United States
0.0
0
Payment method verified
Member since Jul 21, 2008

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.